本教程操作環境:windows7系統、PHP8版、DELL G3電腦
php數組指針用于操作數組。
在php中,數組指針是數組內部的組織機制,指向一個數組中的某個元素。
(資料圖片)
每個數組都有一個內部的指針指向它“當前的”單元(元素),這個指針最初指向的是當前數組中的第一個單元。
通過移動或改變指針的位置,可以訪問數組中的任意元素。對于數組指針的控制PHP提供了以下幾個內置函數可以利用。
current():返回數組的當前元素
pos():current 的別名,用法一樣。
key():讀取當前指針所指向資料的索引值(鍵值)。
next():將數組中的內部指針移動到下一個單元。
prev():將數組的內部指針倒回一位。
end():將數組的內部指針指向最后一個元素。
reset():將目前指針無條件移至第一個索引位置。
這些函數的參數都是只有一個,就是要操作的數組本身。
在下面的示例中,將使用這些數組指針函數控制數組中元素的讀取順序。代碼如下所示:
<?phpheader("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>"; //指針指向11next($arr); //指針指向22echo current($arr)."<br>"; //指針指向22next($arr); //指針指向33next($arr); //指針指向44echo current($arr)."<br>"; //指針指向44?>
prev()函數
參數是一個數組,引用傳值,移動數組指針到上一位,返回該位的值,當該位沒有元素時返回false,空數組也會返回false
<?php$arr = [11,22,33,44,55,66];echo current($arr)."<br>"; //指針指向11next($arr); //指針指向22next($arr); //指針指向33echo current($arr)."<br>"; //指針指向33prev($arr); //指針指向22echo current($arr)."<br>"; //指針指向22?>
end()函數
參數是一個數組,引用傳值,將一個數組的內部指針移動到數組的最后一個元素所在的位置,然后返回最后一個元素的值,在數組為空的情況下返回false
<?php$arr = [11,22,33,44,55,66];echo current($arr)."<br>"; //指針指向11end($arr); //指針指向11echo current($arr)."<br>"; //指針指向66?>
reset()函數
參數是一個數組,引用傳值,將一個數組的內部指針重置到首位,也就是數組的第一個元素所在的位置,然后返回第一個元素的值,在數組為空的情況下返回false
<?php$arr = [11,22,33,44,55,66];echo current($arr)."<br>"; //指針指向11next($arr); //指針指向22next($arr); //指針指向33echo current($arr)."<br>"; //指針指向33reset($arr); //指針指向11echo current($arr)."<br>"; //指針指向11?>
推薦學習:《PHP視頻教程》
以上就是php數組指針什么用的詳細內容,更多請關注php中文網其它相關文章!