php陣列指標用於操作陣列。數組指標是數組內部的組織機制,每個數組都有一個內部的指標指向它「目前的」單元(元素),這個指標最初指向的是當前數組中的第一個單元;透過移動或改變數組指標的位置,可以存取數組中的任意元素。對於陣列指標的控制PHP提供了多個內建函數:current()、pos()、key()、next()、prev()、end()、reset()。
本教學操作環境:windows7系統、PHP8版、DELL G3電腦
php陣列指標用於操作陣列。
在php中,陣列指標是陣列內部的組織機制,指向一個陣列中的某個元素。
每個陣列都有一個內部的指標指向它「目前的」單元(元素),這個指標原本指向的是目前陣列中的第一個單元。
透過移動或改變指標的位置,可以存取陣列中的任意元素。對於陣列指標的控制PHP提供了以下幾個內建函數可以利用。
current():傳回陣列的目前元素
#pos():current 的別名,用法一樣。
key():讀取目前指標所指向資料的索引值(鍵值)。
next():將陣列中的內部指標移到下一個單元。
prev():將陣列的內部指標倒回一位。
end():將陣列的內部指標指向最後一個元素。
reset():將目前指標無條件移至第一個索引位置。
這些函數的參數都是只有一個,就是要操作的陣列本身。
在下面的範例中,將使用這些陣列指標函數控制陣列中元素的讀取順序。程式碼如下圖所示:
<?php header('content-type:text/html;charset=utf-8'); $contact = array( "ID" => 1, "姓名" => "高某", "公司" => "A公司", "地址" => "北京市", "电话" => "(010)98765432", "EMAIL" => "gao@brophp.com", ); //数组刚声明时,数组指针在数组中第一个元素位置 echo '第一个元素:'.key($contact).' => '.current($contact).'<br>'; //第一个元素 echo '第一个元素:'.key($contact).' => '.current($contact).'<br>'; //数组指针没动 next($contact); next($contact); echo '第三个元素:'.key($contact).' => '.current($contact).'<br>'; //第三个元素 end($contact); echo '最后一个元素:'.key($contact).' => '.current($contact).'<br>'; prev($contact); echo '倒数第二个元素:'.key($contact).' => '.current($contact).'<br>'; reset($contact); echo '又回到了第一个元素:'.key($contact).' => '.current($contact).'<br>'; ?>
下面一個個來介紹一下。
current()函數
參數是一個數組,引用傳值,傳回目前數組指標所指向的值,指標移動超出了數組的末尾,傳回false ,在陣列為空的情況下傳回false
陣列的指標預設在陣列的第一位
<?php $arr = [11,22,33,44,55,66]; echo current($arr); ?>
##key()函數
參數是數組,引用傳值,傳回目前指標所指向的元素的鍵,當指標所指的那一位沒有元素傳回null,空數組傳回null<?php $arr = [11,22,33,44,55,66]; var_dump($arr); echo current($arr)."<br>"; //当前指针指向11 echo key($arr)."<br>"; //当前元素的键名 ?>
next()函數
參數是數組,引用傳值,移動數組指標到下一位,傳回該位的值,當位元沒有元素時回傳false,空數組也會回傳false<?php $arr = [11,22,33,44,55,66]; echo current($arr)."<br>"; //指针指向11 next($arr); //指针指向22 echo current($arr)."<br>"; //指针指向22 next($arr); //指针指向33 next($arr); //指针指向44 echo current($arr)."<br>"; //指针指向44 ?>
#prev()函數##參數是一個陣列,引用傳值,移動數組指標到上一位,傳回該位的值,當該位沒有元素時傳回false,空數組也會傳回false
<?php $arr = [11,22,33,44,55,66]; echo current($arr)."<br>"; //指针指向11 next($arr); //指针指向22 next($arr); //指针指向33 echo current($arr)."<br>"; //指针指向33 prev($arr); //指针指向22 echo current($arr)."<br>"; //指针指向22 ?>
end()函數
參數是一個數組,引用傳值,將一個數組的內部指標移到數組的最後一個元素所在的位置,然後傳回最後一個元素的值,在數組為空的情況下傳回false
<?php $arr = [11,22,33,44,55,66]; echo current($arr)."<br>"; //指针指向11 end($arr); //指针指向11 echo current($arr)."<br>"; //指针指向66 ?>
##參數是數組,引用傳值,將一個陣列的內部指標重置到首位,也就是陣列的第一個元素所在的位置,然後傳回第一個元素的值,在陣列為空的情況下傳回false
<?php $arr = [11,22,33,44,55,66]; echo current($arr)."<br>"; //指针指向11 next($arr); //指针指向22 next($arr); //指针指向33 echo current($arr)."<br>"; //指针指向33 reset($arr); //指针指向11 echo current($arr)."<br>"; //指针指向11 ?>
推薦學習:《PHP影片教學
》以上是php數組指標什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!