簡單點說,array_splice()函式的功能,是把給定陣列中從某位置開始的陣列元素去掉,返回一個包含有被移除單元的陣列。因此,你的疏忽之處在於:foreach(array_splice($array,2)as$key=>$value)這句程式碼中的array_splice($array,2)的結果是那些被你移除陣列的元素,而不是你意想中你想保留的資料。你需要仔細看下array_splice的函式原型宣告:arrayarray_splice(array&$input,int$offset。。。。。)注意:&$input這個引數是用地址傳遞的方式,而不是通常的值傳遞,所以,呼叫array_splice函式之後,會直接將$input陣列的資料進行修改。綜合上面,修改程式碼如下:<?php$array=array(1,2,3,4,5);$array[7]=7;$array[]=8;$arr=array_splice($array,3);foreach($arrayas$key=>$value){echo"$key:$value<br/>";}?>
簡單點說,array_splice()函式的功能,是把給定陣列中從某位置開始的陣列元素去掉,返回一個包含有被移除單元的陣列。因此,你的疏忽之處在於:foreach(array_splice($array,2)as$key=>$value)這句程式碼中的array_splice($array,2)的結果是那些被你移除陣列的元素,而不是你意想中你想保留的資料。你需要仔細看下array_splice的函式原型宣告:arrayarray_splice(array&$input,int$offset。。。。。)注意:&$input這個引數是用地址傳遞的方式,而不是通常的值傳遞,所以,呼叫array_splice函式之後,會直接將$input陣列的資料進行修改。綜合上面,修改程式碼如下:<?php$array=array(1,2,3,4,5);$array[7]=7;$array[]=8;$arr=array_splice($array,3);foreach($arrayas$key=>$value){echo"$key:$value<br/>";}?>