鍵我有此數組:陣列中的值複製到PHP
$a = array('b', 'c', 'd');
有沒有給數組轉換爲以下一個簡單的方法是什麼?
$a = array('b' => 'b', 'c' => 'c', 'd' => 'd');
鍵我有此數組:陣列中的值複製到PHP
$a = array('b', 'c', 'd');
有沒有給數組轉換爲以下一個簡單的方法是什麼?
$a = array('b' => 'b', 'c' => 'c', 'd' => 'd');
$final_array = array_combine($a, $a);
附:
*請注意類似的值。例如: array('one'=>..,'two'=>..,'one'=>...)
要小心,與$a = array_combine($a, $a);
提出的解決方案不會爲數值工作:如果換算喜歡重複鍵 array('one','two','one')
可能會有問題。
我例如希望有一個存儲器array(128,256,512,1024,2048,4096,8192,16384)
是鍵以及值但是PHP手冊指出:
如果輸入陣列具有相同的字符串鍵,則該鍵後值將覆蓋前一個。但是,如果數組包含數字鍵,則後面的值不會覆蓋原始值,但會被追加。
所以我解決了它這樣的:
foreach($array as $key => $val) {
$new_array[$val]=$val;
}
以上是不正確 - 你的報價來自於文檔'array_merge'而不是'array_combine';我甚至用'array_combine'和後一個值來測試它,即使在數字鍵列中_always_覆蓋了前一個。 – Brett 2017-04-02 20:13:47