迴圈遍歷 PHP 中的關聯陣列
-
在 PHP 中使用
foreach
迴圈來迴圈關聯陣列並獲取鍵值 -
在 PHP 中使用
array_keys()
函式和foreach
迴圈從關聯陣列中獲取鍵 -
在 PHP 中使用帶有
for
迴圈的array_keys()
函式從關聯陣列中獲取鍵
本文將介紹幾種在 PHP 中迴圈關聯陣列的方法。我們還將學習如何從陣列中獲取鍵。
在 PHP 中使用 foreach
迴圈來迴圈關聯陣列並獲取鍵值
PHP 和其他流行的程式語言中有許多迴圈語句,如 for
、while
、do...while
、foreach
等。這些不同的迴圈根據問題的性質使用。
我們可以使用 foreach
迴圈遍歷一個陣列。foreach
迴圈適用於遍歷陣列的每個元素。
foreach
迴圈的語法如下所示。
foreach($array as $value){
statements
}
這裡,$array
是迭代的陣列,$value
是每次迭代中陣列的項。
我們還可以在關聯陣列中使用 foreach
迴圈來遍歷陣列的鍵和值。關聯陣列是一種陣列,它包含陣列中每個專案的鍵值對。
使用 foreach
迴圈,我們可以獲得陣列項的鍵和值。關聯陣列的 foreach
迴圈語法如下所示。
foreach($array as $key => $value){
statements
}
這裡,$key
是陣列項的索引,$value
是項。
以下說明和示例演示瞭如何遍歷關聯陣列並從陣列中獲取每個鍵。
-
建立一個關聯陣列
$age
,以人的姓名和年齡作為鍵和值。 -
接下來,使用
foreach
迴圈,其中$age
是陣列,$key
和$value
是鍵值對,如foreach ($age as $key => $value)
。 -
使用迴圈內的
echo
函式來列印$key
。
示例程式碼:
<?php
$age = array("Paul"=>"35", "Brandon"=>"37", "Jack"=>"43");
foreach ($age as $key => $value) {
echo $key."<br>";
}
?>
輸出:
Paul
Brandon
Jack
在上面的示例中,我們使用了以下關聯陣列。
Array ( [Paul] => 35 [Brandon] => 37 [Jack] => 43 )
我們列印了陣列的鍵,即人名。它們可以在上面的輸出部分中看到。
在 PHP 中使用 array_keys()
函式和 foreach
迴圈從關聯陣列中獲取鍵
PHP 提供了一個函式 array_keys()
從作為引數提供的陣列中選擇鍵。然後,我們可以使用 foreach
迴圈遍歷鍵並將它們全部列出。
array_keys()
函式的語法如下所示。
array_key($array, $search_value)
此函式返回一個鍵陣列。引數 $array
是要從中提取鍵的陣列。
引數 search_value
是一個可選引數,通過它我們可以提取指定特定值的鍵。
例如,
-
考慮一個具有以下鍵值對的關聯陣列
$nationality
。Array ( [Paul] => England [Brandon] => New Zealand [Jack] => Ireland )
-
建立一個變數
$names
並將array_keys()
函式分配給它,並將$nationality
作為函式的引數。 -
接下來,使用
foreach
迴圈遍歷$names
陣列。 -
在迴圈內,用
$name
值列印$names
陣列的每個專案。
示例程式碼:
<?php
$nationality = array("Paul"=>"England", "Brandon"=>"New Zealand", "Jack"=>"Ireland");
$names =array_keys($nationality);
foreach ($names as $name) {
echo $name."<br>";
}
?>
在上面的示例中,$names
陣列的輸出如下所示。
Array ( [0] => Paul [1] => Brandon [2] => Jack ) Paul
因此,我們獲得了一組 $nationality
鍵。我們使用 foreach
迴圈遍歷這個陣列以提取每個專案。
輸出如下所示。
輸出:
Paul
Brandon
Jack
通過這種方式,我們可以使用 PHP 中的 array_keys()
函式獲取陣列的鍵。
在 PHP 中使用帶有 for
迴圈的 array_keys()
函式從關聯陣列中獲取鍵
第三種方法使用 for
迴圈模仿第二種方法。for
和 foreach
迴圈之間的區別在於我們可以在 for
迴圈中手動指定條件和迭代次數。
我們可以使用 count()
函式計算陣列元素的數量以確定迭代次數。array_keys()
函式與第二種方法相同。
在這裡,我們將考慮上述方法中使用的相同關聯陣列。
-
將
array_keys()
函式應用於陣列後,建立一個for
迴圈。 -
使用
count()
函式計算$names
陣列的長度。 -
使用長度來指定
for
迴圈的結束條件。 -
從計數器
0
開始迴圈。 -
使用
$i
變數對其進行初始化。 -
在
for
迴圈中用1
增加變數$i
。 -
在迴圈內部,使用
$names
陣列中的索引$i
列印每個專案。
示例程式碼:
<?php
$nationality = array("Paul"=>"England", "Brandon"=>"New Zealand", "Jack"=>"Ireland");
$names =array_keys($nationality);
for($i=0; $i<count($names); $i++) {
echo $names[$i]."<br>";
}
?>
輸出:
Paul
Brandon
Jack
這樣,我們可以使用 for
迴圈和 array_keys()
從 PHP 中的關聯陣列中獲取鍵。
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn相關文章 - PHP Array
- 如何確定 PHP foreach 迴圈中的第一次和最後一次迭代
- 如何在 PHP 中將陣列轉換為字串
- 如何在 PHP 中獲取陣列的第一個元素
- 如何在 PHP 中回顯或列印陣列
- 如何從 PHP 中的陣列中刪除元素
- 如何在 PHP 中刪除空陣列元素