Heim > Artikel > Backend-Entwicklung > PHP-Funktion array_slice(), die einen ausgewählten Teil eines Arrays zurückgibt
Beispiel
Beginnen Sie mit dem Herausnehmen des zweiten Elements des Arrays und geben Sie alle Elemente bis zum Ende des Arrays zurück:
<?php $a=array("red","green","blue","yellow","brown"); print_r(array_slice($a,2)); ?>
Definition und Verwendung
array_slice () Die Funktion gibt den ausgewählten Teil des Arrays zurück.
Hinweis: Wenn das Array einen Schlüssel mit der Zeichenfolge hat, behält das zurückgegebene Array den Schlüssel bei (siehe Beispiel 4).
Syntax
array_slice(array,start,length,preserve)
Parameter | Beschreibung | ||||||||||||||||
array | Erforderlich . Gibt ein Array an. | ||||||||||||||||
start | Erforderlich. Zahlenwert. Gibt die Startposition des abzurufenden Elements an. 0 = erstes Element. Wenn der Wert auf eine positive Zahl gesetzt ist, wird er von vorne nach hinten genommen. Wenn der Wert auf eine negative Zahl gesetzt ist, wird der absolute Wert von start von hinten nach vorne genommen. -2 bedeutet, dass mit dem vorletzten Element des Arrays begonnen wird. | ||||||||||||||||
length | Optional. Zahlenwert. Gibt die Länge des zurückgegebenen Arrays an. Wenn der Wert auf eine Ganzzahl festgelegt ist, wird diese Anzahl an Elementen zurückgegeben. Wenn dieser Wert auf eine negative Zahl gesetzt ist, beendet die Funktion den Abruf so weit vom Ende des Beispielarrays entfernt. Wenn dieser Wert nicht festgelegt ist, werden alle Elemente ab der durch den Startparameter festgelegten Position bis zum Ende des Arrays zurückgegeben. | ||||||||||||||||
preserve | Optional. Gibt an, ob die Funktion Schlüsselnamen beibehält oder Schlüsselnamen zurücksetzt. Mögliche Werte:
|
Rückgabewert: | Gibt den ausgewählten Teil des Arrays zurück. |
PHP-Version: | 4+ |
Update-Protokoll: | preserve-Parameter ist neu in PHP 5.0.2. |
更多实例
实例 1
从数组的第一个元素开始取出,并返回两个元素:
<?php $a=array("red","green","blue","yellow","brown"); print_r(array_slice($a,1,2)); ?>
实例 2
使用负的 start 参数:
<?php $a=array("red","green","blue","yellow","brown"); print_r(array_slice($a,-2,1)); ?>
实例 3
带有设置为 true 的 preserve 参数:
<?php $a=array("red","green","blue","yellow","brown"); print_r(array_slice($a,1,2,true)); ?>
实例 4
带有字符串和整数键名:
<?php $a=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow","e"=>"brown"); print_r(array_slice($a,1,2)); $a=array("0"=>"red","1"=>"green","2"=>"blue","3"=>"yellow","4"=>"brown"); print_r(array_slice($a,1,2)); ?>
array_slice函数实现的分页方法非常好用,分享如下:
<?php //假定一个结果集二维数组: $arr = array(array('name'=> 'name1','sex' => 'sex1','job' => 'job1'), array('name'=> 'name2','sex' => 'sex2','job' => 'job2'), array('name'=> 'name3','sex' => 'sex3','job' => 'job3'), array('name'=> 'name4','sex' => 'sex4','job' => 'job4'), array('name'=> 'name5','sex' => 'sex5','job' => 'job5'), array('name'=> 'name6','sex' => 'sex6','job' => 'job6'), array('name'=> 'name7','sex' => 'sex7','job' => 'job7'), array('name'=> 'name8','sex' => 'sex8','job' => 'job8'), array('name'=> 'name9','sex' => 'sex9','job' => 'job9'), array('name'=> 'name10','sex' => 'sex10','job' => 'job10'), array('name'=> 'name11','sex' => 'sex11','job' => 'job11'), array('name'=> 'name12','sex' => 'sex12','job' => 'job12'), ); //计算总记录条数 $num = count($arr); //规定每页显示的条数 $perpage = 3; //计算页数 $pages = ceil($num/$perpage); //echo $num,$perpage,$pagecount;exit; if(is_numeric($_REQUEST['page'])) { if($_REQUEST['page']<1){ $page = 1; }elseif($_REQUEST['page']>$pages) { $page = $pages; }else{ $page = $_REQUEST['page']; } }else{ $page = 1; } $start = ($page-1)*$perpage; $newpage = array_slice($arr,$start,$perpage,true); //print_r($newpage);exit; ?> <table cellpadding="0" cellspacing="0" border="1"> <tr> <td>name</td> <td>sex</td> <td>job</td> </tr> <?php foreach($newpage as $k => $v) { ?> <tr> <td><?php echo $v['name']; ?></td> <td><?php echo $v['sex']; ?></td> <td><?php echo $v['job']; ?></td> </tr> <?php } ?> </table> <?php if($page>1){ echo "<a href='?page=1'>首页</a>"; echo "<a href='?page=".($page-1)."'>上一页</a>"; } if($page<$pages) { echo "<a href='?page=".($page+1)."'>下一页</a>"; echo "<a href='?page=".$pages."'>末页</a>"; } ?>
Das obige ist der detaillierte Inhalt vonPHP-Funktion array_slice(), die einen ausgewählten Teil eines Arrays zurückgibt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!