在PHP開發中,陣列是常用的資料結構之一。在處理數組時,有時候需要去掉數組的key,只取數組中的值。下面,我們來介紹幾種常用的去掉數組key的方法。
方法一:foreach循環
使用foreach循環遍歷數組時,可以只取出數組的值。範例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); foreach ($arr as $value) { echo $value . " "; } // 输出:1 2 3
透過這種方式,我們可以只取出數組中的值,而不關心鍵名。
方法二:array_values()函數
PHP提供了一個專門去掉陣列鍵名的函數 array_values()。此函數傳回一個只包含數組中所有值的新數組,沒有鍵名。範例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); $newArr = array_values($arr); print_r($newArr); // 输出:Array ( [0] => 1 [1] => 2 [2] => 3 )
透過這種方式,我們可以得到一個不含鍵名的新陣列。
方法三:array_map()函數
array_map()函數是一個非常強大的函數,它可以對數組中的每個元素應用回調函數,然後傳回一個數組,該數組的每個元素都是回呼函數的回傳值。範例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); $newArr = array_map(function($value) { return $value; }, $arr); print_r($newArr); // 输出:Array ( [one] => 1 [two] => 2 [three] => 3 )
可以看到,array_map()函數並沒有去掉陣列的鍵名。我們可以透過結合使用array_map()函數和array_values()函數來實現去掉陣列鍵名的效果,範例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); $newArr = array_values(array_map(function($value) { return $value; }, $arr)); print_r($newArr); // 输出:Array ( [0] => 1 [1] => 2 [2] => 3 )
結合使用array_map()函數和array_values()函數,我們可以得到一個不含有鍵名的新數組。
方法四:強制型別轉換
將一個陣列強制轉換為整數或字串型,PHP會自動去掉陣列的鍵名,只取陣列中的值。範例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); echo (int)$arr; // 输出:Array echo (string)$arr; // 输出:Array
透過強制型別轉換,我們同樣可以得到一個不含鍵名的新陣列。
綜上所述,我們介紹了四種去掉陣列鍵名的方法:foreach循環、array_values()函數、array_map()函數結合array_values()函數、以及強制型別轉換。各種方法各有優缺點,依具體需求選擇不同的方法即可。
以上是php怎麼去掉陣列的key的詳細內容。更多資訊請關注PHP中文網其他相關文章!