首頁 >後端開發 >PHP問題 >php 改變陣列的key

php 改變陣列的key

王林
王林原創
2023-05-07 15:31:10506瀏覽

在 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn