1
cnqncom OP array(3) {
[111]=> string(3) "222" [333]=> string(3) "444" [555]=> string(3) "666" } |
2
zcc911 2017-10-08 10:53:36 +08:00 1
最简单的:
$arr = ['111', '222', '333', '444', '555', '666']; $arr_out = []; for($i = 0; $i < count($arr); $i+=2){ $arr_out["{$arr[$i]}"] = "{$arr[$i+1]}"; } echo "<pre>"; var_dump($arr_out); echo "</pre>"; |
3
VgV 2017-10-08 11:02:47 +08:00
试试 array_flip($array);
|
4
VgV 2017-10-08 11:14:10 +08:00
哦,刚才没注意看,我还以为是把值改为名呢。
你下面想得到的结果是必须借用循环来排序了,没有更简单的了。 |
5
cnqncom OP 感谢各位
|
6
lujjjh 2017-10-08 11:18:50 +08:00
$pairs = array_chunk(['111', '222', '333', '444', '555', '666'], 2);
$keys = array_column($pairs, 0); $values = array_column($pairs, 1); $result = array_combine($keys, $values); print_r($result); |