将值复制到PHP中的键
我有这个数组:
$a = array('b', 'c', 'd');
有一个简单的方法来将数组转换为以下?
$a = array('b' => 'b', 'c' => 'c', 'd' => 'd');
$final_array = array_combine($a, $a);
PS
*小心类似的值。 例如:
array('one','two','one')
如果转换为重复键可能会有问题:
array('one'=>..,'two'=>..,'one'=>...)
小心,提出的解决scheme$a = array_combine($a, $a);
将不适用于数值。
我例如想要有一个内存array(128,256,512,1024,2048,4096,8192,16384)
作为键和值,但是PHP手册指出:
如果input数组具有相同的string键,则该键的较晚值将覆盖前一个键。 但是,如果数组包含数字键,则后面的值不会覆盖原始值,但会被追加。
所以我解决了这个问题:
foreach($array as $key => $val) { $new_array[$val]=$val; }