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

php 改變陣列的key

王林
發布: 2023-05-07 15:31:10
原創
505 人瀏覽過

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

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板