PHP

foreachの中で参照渡しのunsetしたときの不思議

PHP

PHPで、配列の中の特定の要素を削除するときといえばだいたい、 ↓な感じかと思います。 1, 'b' => 2, 'c' => 3]; foreach($a as $key => $val){ if($val === 2){ unset($a[$key]); } } array(2) { ["a"]=> int(1) ["c"]=> int(3) } けど、foreachで参照渡し…

IDをkeyにした配列をarray_mergeしてバグを出しました

PHP

やったこと 'a', '257' => 'b', '245' => 'c'); $b = array('477' => 'd', '502' => 'e', 'f4c' => '600'); var_dump(array_merge($a, $b)); // <1> var_dump($a + $b); // <2> けっか array(6) { [0]=> string(1) "a" [1]=> string(1) "b" [2]=> string(1)…