在PHP開發中,我們經常需要透過陣列來儲存和處理資料。而有時候我們又需要將數組中的鍵去掉,只保留值,這個時候就需要用到一些處理數組的方法。
雖然陣列鍵值對是PHP中非常常見的資料結構,但有時候去掉陣列中的鍵是非常有用的。常見的情況包括:
有時候我們需要根據數組中的值來查找數據,而不是根據鍵來查找。如果數組的鍵是自動產生的數字,這種情況就很適用。
如果我們想要對陣列中的值進行計數,而不關心鍵的情況下,將陣列的鍵去掉就是很好的選擇。
在進行資料庫查詢的時候,有時候我們只需要查詢一些特定的字段,而不需要查詢整個記錄。這時候,將陣列的鍵去掉就非常實用。
那麼,如何去掉PHP中陣列的鍵呢?下面我們介紹幾種方法。
方法一:array_values()
PHP中的array_values()函數會傳回由數組的值組成的新數組,鍵名保持不變。這個函數的作用就是將陣列的鍵去掉,只保留值。範例如下:
$arr = array('one'=>'1', 'two'=>'2', 'three'=>'3'); $new_arr = array_values($arr); print_r($new_arr);
輸出:
Array ( [0] => 1 [1] => 2 [2] => 3 )
方法二:array_map()
array_map()函數的作用是將回呼函數作用到陣列中的每一個值上,並傳回一個新的數組。這個回呼函數可以是一個任意使用者自訂函數,也可以是PHP自帶的函數。我們可以使用這個函數來去掉數組的鍵,範例如下:
$arr = array('one'=>'1', 'two'=>'2', 'three'=>'3'); $new_arr = array_map(function($value){ return $value; }, $arr); print_r($new_arr);
輸出:
Array ( [0] => 1 [1] => 2 [2] => 3 )
方法三:foreach循環
如果我們不想使用PHP內建的函數,可以使用一個簡單的foreach循環來解決這個問題,範例如下:
$arr = array('one'=>'1', 'two'=>'2', 'three'=>'3'); $new_arr = array(); foreach($arr as $value){ $new_arr[] = $value; } print_r($new_arr);
輸出:
Array ( [0] => 1 [1] => 2 [2] => 3 )
當然,如果你只關心數組中的值,而不關心鍵,也可以在創建數組的時候直接創建一個值的數組。
$values = array(1, 2, 3);
透過上面的方法,我們可以很方便地去掉PHP中陣列的鍵,只保留值。這在實際開發時也非常常用,特別是處理資料和統計資料時。
以上是php去掉數組健的詳細內容。更多資訊請關注PHP中文網其他相關文章!