php陣列指標什麼用

2022-12-28 22:04:29

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" => "[email protected]",
);
//陣列剛宣告時,陣列指標在陣列中第一個元素位置
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>';
?>
登入後複製

1.png

下面一個個來介紹一下。

current()函數

引數是一個陣列,參照傳值,返回當前陣列指標所指向的值,指標移動超出了陣列的末尾,返回false,在陣列為空的情況下返回false

陣列的指標預設在陣列的第一位

<?php
$arr = [11,22,33,44,55,66];
echo current($arr);
?>
登入後複製

2.png

key()函數

引數是一個陣列,參照傳值,返回當前指標所指向的元素的鍵,當指標所指的那一位沒有元素返回null,空陣列返回null

<?php
$arr = [11,22,33,44,55,66];
var_dump($arr);
echo current($arr)."<br>";   //當前指標指向11 
echo key($arr)."<br>";   //當前元素的鍵名
?>
登入後複製

3.png

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
?>
登入後複製

4.png

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

?>
登入後複製

5.png

end()函數

引數是一個陣列,參照傳值,將一個陣列的內部指標移動到陣列的最後一個元素所在的位置,然後返回最後一個元素的值,在陣列為空的情況下返回false

<?php
$arr = [11,22,33,44,55,66];
echo current($arr)."<br>";   //指標指向11
end($arr);                 //指標指向11
echo current($arr)."<br>";   //指標指向66
?>
登入後複製

6.png

reset()函數

引數是一個陣列,參照傳值,將一個陣列的內部指標重置到首位,也就是陣列的第一個元素所在的位置,然後返回第一個元素的值,在陣列為空的情況下返回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
?>
登入後複製

7.png

推薦學習:《》

以上就是php陣列指標什麼用的詳細內容,更多請關注TW511.COM其它相關文章!