在 PHP 中,可以使用 array_keys() 函數取得陣列的所有鍵名,使用 array_values() 函數取得陣列的所有值。透過這兩個函數可以輕鬆實現改變數組鍵名的操作。
方法一:使用 array_combine() 函數
array_combine() 函數將一個陣列的鍵名稱作為新陣列的值,將一個陣列的鍵值作為新陣列的鍵名。因此,可以先用 array_keys() 和 array_values() 函數取得原始數組的鍵名和鍵值,然後使用 array_combine() 函數將鍵名和鍵值轉換成新數組,最後使用 unset() 函數刪除原始數組。以下是範例程式碼:
// 原数组 $old_array = array( 'id' => 1, 'name' => 'Tom', 'age' => 20, ); // 获取原数组的键名和键值 $keys = array_keys($old_array); $values = array_values($old_array); // 将键名和键值转换成新数组 $new_array = array_combine($values, $keys); // 删除原数组 unset($old_array); // 输出新数组 print_r($new_array);
執行上述程式碼,輸出的結果為:
Array ( [1] => id [Tom] => name [20] => age )
上述程式碼將原數組的鍵名作為新數組的值,將原始數組的鍵值作為新數組的鍵名,成功實現了改變數組鍵名的操作。
方法二:使用 array_flip() 函數
array_flip() 函數將陣列的鍵名稱作為新陣列的值,將陣列的鍵值作為新陣列的鍵名。因此,可以直接使用 array_flip() 函數將原始數組的鍵名和鍵值交換,最後使用 unset() 函數刪除原始數組。
// 原数组 $old_array = array( 'id' => 1, 'name' => 'Tom', 'age' => 20, ); // 将键名和键值交换 $new_array = array_flip($old_array); // 删除原数组 unset($old_array); // 输出新数组 print_r($new_array);
執行上述程式碼,輸出的結果為:
Array ( [1] => id [Tom] => name [20] => age )
上述程式碼直接使用array_flip() 函數將原始數組的鍵名和鍵值交換,成功實現了改變數組鍵名的操作。
無論是使用 array_combine() 函數或是使用 array_flip() 函數,都可以輕鬆實現改變陣列鍵名的運算。根據實際情況選擇合適的方法即可,使程式碼更簡潔、更優雅。
以上是php 改變陣列的key的詳細內容。更多資訊請關注PHP中文網其他相關文章!