在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1.array_pad函数 <?php //定义一个数组 $items=array("农药1"=>"杀虫剂","农药2"=>"除草剂","化肥1"=>"化肥"); $result=array_pad($items,4,"其它"); print_r($result); ?> 显示: Array ( [农药1] => 杀虫剂 [农药2] => 除草剂 [化肥1] => 化肥 [0] => 其它 ) 当array_pad函数中,设定的数组长度小于现有数组时,会输出什么呢? 1 <?php 2 3 //定义一个数组 4 $items=array("农药1"=>"杀虫剂","农药2"=>"除草剂","化肥1"=>"化肥"); 5 $result=array_pad($items,2,"其它"); 6 print_r($result); 7 ?> 结果是不会改变数组,正常输出数组: Array ( [农药1] => 杀虫剂 [农药2] => 除草剂 [化肥1] => 化肥 ) 2.array_splice函数 1 <?php 2 3 //定义一个数组 4 $items=array("杀虫剂","除草剂","化肥","中间体"); 5 $result=array_splice($items,2); 6 print_r($result); 7 ?> 显示: Array ( [0] => 化肥 [1] => 中间体 ) (2)一个有趣的实验,首先: <?php $a1=array("Dog","Cat","Horse","Bird"); array_splice($a1,2); print_r($a1); ?> offset为2,表示从第二个元素开始删除,结果输出为: Array ( [0] => Dog [1] => Cat ) 但是,如果将array_splice($a1,2); 赋予一个变量——$a2,然后再输出$a2,那么,就会得到一个相反的结果: 1 <?php 2 $a1=array("Dog","Cat","Horse","Bird"); 3 $a2=array_splice($a1,2); 4 print_r($a2); 5 ?> 输出: Array ( [0] => Horse [1] => Bird ) 由此,我们可以得到一个结论,array_splice函数的值,是一个数组,而$a1也是一个数组,经过array_splice函数操作后,数组$a1的大小就发生了改变,一些元素被删掉了。那些被删掉的元素就进入了array_splice这个函数里,如果将这个函数赋予给一个变量,如$a2,那么$a2这个数组,就是被删除掉的值。 (3)删除从第一个到倒数第一个(第四个)元素之间的所有元素: 1 <?php 2 $a1=array("Dog","Cat","Horse","Bird"); 3 array_splice($a1,1,-1); 4 print_r($a1); 5 ?> 显示: Array ( [0] => Dog [1] => Bird ) 来检验一下,array_splice函数里,是否含有被删除的数组元素: <?php $a1=array("Dog","Cat","Horse","Bird"); $a2=array_splice($a1,1,-1); print_r($a2); ?> 显示出被删除的两个元素: Array ( [0] => Cat [1] => Horse ) (4)删除从第一个到最后一个元素之间的所有元素,并且用*代替。 1 <?php 2 $a1=array("Dog","Cat","Horse","Bird"); 3 array_splice($a1,1,2,"*"); 4 print_r($a1); 5 ?> 显示: Array ( [0] => Dog [1] => * [2] => Bird ) (5)删除从数组末尾,倒数一个元素。并以*代替被删掉的数据。 1 <?php 2 $a1=array("Dog","Cat","Horse","Bird"); 3 array_splice($a1,-1,1,"*"); 4 print_r($a1); 5 ?> 应该显示出:狗,猫,* Array ( [0] => Dog [1] => Cat [2] => Horse [3] => * ) *也可以改成另外一个数组。 分析:假设数组含有元素n个,那么要删除的就是第n-1和第n个元素。我们可以用count($a1)得出n,从n-2开始,剔除2个元素即可。 代码为: 1 <?php 2 $a1=array("Dog","Cat","Horse","Bird"); 3 $n1=count($a1); 4 $n1-=2; 5 array_splice($a1,$n1,2); 6 print_r($a1); 7 ?> 显示: Array ( [0] => Dog [1] => Cat ) 验证一下,如果数组元素有10个,剔除后两个元素, 1 <?php 2 $a1=array("Dog","Cat","Horse","Bird","5","6","7","8","9","10"); 3 $n1=count($a1); 4 $n1-=2; 5 array_splice($a1,$n1,2); 6 print_r($a1); 7 ?> 显示: Array ( [0] => Dog [1] => Cat [2] => Horse [3] => Bird [4] => 5 [5] => 6 [6] => 7 [7] => 8 )
|
2022-07-29
2022-08-17
2022-11-06
2022-08-18
2022-08-16
请发表评论