首頁 > 後端開發 > PHP問題 > php數組指標什麼用

php數組指標什麼用

青灯夜游
發布: 2023-03-17 17:26:01
原創
4536 人瀏覽過

php陣列指標用於操作陣列。數組指標是數組內部的組織機制,每個數組都有一個內部的指標指向它「目前的」單元(元素),這個指標最初指向的是當前數組中的第一個單元;透過移動或改變數組指標的位置,可以存取數組中的任意元素。對於陣列指標的控制PHP提供了多個內建函數:current()、pos()、key()、next()、prev()、end()、reset()。

php數組指標什麼用

本教學操作環境:windows7系統、PHP8版、DELL G3電腦

php陣列指標用於操作陣列。

在php中,陣列指標是陣列內部的組織機制,指向一個陣列中的某個元素。

每個陣列都有一個內部的指標指向它「目前的」單元(元素),這個指標原本指向的是目前陣列中的第一個單元。

透過移動或改變指標的位置,可以存取陣列中的任意元素。對於陣列指標的控制PHP提供了以下幾個內建函數可以利用。

  • current():傳回陣列的目前元素

  • #pos():current 的別名,用法一樣。

  • key():讀取目前指標所指向資料的索引值(鍵值)。

  • next():將陣列中的內部指標移到下一個單元。

  • prev():將陣列的內部指標倒回一位。

  • end():將陣列的內部指標指向最後一個元素。

  • reset():將目前指標無條件移至第一個索引位置。

這些函數的參數都是只有一個,就是要操作的陣列本身。

在下面的範例中,將使用這些陣列指標函數控制陣列中元素的讀取順序。程式碼如下圖所示:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);  
$contact = array(
"ID" => 1,
"姓名" => "高某",
"公司" => "A公司",
"地址" => "北京市",
"电话" => "(010)98765432",
"EMAIL" => "gao@brophp.com",
);
//数组刚声明时,数组指针在数组中第一个元素位置
echo &#39;第一个元素:&#39;.key($contact).&#39; => &#39;.current($contact).&#39;<br>&#39;; //第一个元素
echo &#39;第一个元素:&#39;.key($contact).&#39; => &#39;.current($contact).&#39;<br>&#39;; //数组指针没动
next($contact);
next($contact);
echo &#39;第三个元素:&#39;.key($contact).&#39; => &#39;.current($contact).&#39;<br>&#39;; //第三个元素
end($contact);
echo &#39;最后一个元素:&#39;.key($contact).&#39; => &#39;.current($contact).&#39;<br>&#39;;
prev($contact);
echo &#39;倒数第二个元素:&#39;.key($contact).&#39; => &#39;.current($contact).&#39;<br>&#39;;
reset($contact);
echo &#39;又回到了第一个元素:&#39;.key($contact).&#39; => &#39;.current($contact).&#39;<br>&#39;;
?>
登入後複製

php數組指標什麼用

下面一個個來介紹一下。

current()函數

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

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

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

php數組指標什麼用

##key()函數

參數是數組,引用傳值,傳回目前指標所指向的元素的鍵,當指標所指的那一位沒有元素傳回null,空數組傳回null

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

php數組指標什麼用

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

php數組指標什麼用

#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

?>
登入後複製

php數組指標什麼用

end()函數

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

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

php數組指標什麼用

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

推薦學習:《php數組指標什麼用PHP影片教學

以上是php數組指標什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板