質問するログイン新規登録

回答編集履歴

1

途中で回答したので編集

2019/04/19 09:35

投稿

miyabi-sun
miyabi-sun

スコア21542

answer CHANGED
@@ -24,4 +24,31 @@
24
24
  ]
25
25
 
26
26
  >>> $array2 = ['b' => 2, 'c' => 2]
27
+ => [
28
+ "b" => 2,
29
+ "c" => 2,
30
+ ]
31
+
32
+ >>> array_intersect_key($array2, $array1)
33
+ => [
34
+ "b" => 2,
35
+ ]
36
+
37
+ >>> array_merge($array1, array_intersect_key($array2, $array1))
38
+ => [
39
+ "a" => 1,
40
+ "b" => 2,
41
+ ]
27
- ```
42
+ ```
43
+
44
+ array_intersect_keyを使えば重複分が取れるので、
45
+ それを使って取れた配列を使ってarray_mergeで完了ですね。
46
+ 1行で出来るじゃん、楽勝。
47
+
48
+ ```PHP
49
+ array_merge($array1, array_intersect_key($array2, $array1));
50
+ ```
51
+
52
+ 無駄なfor文は一切不要です。
53
+ PHPのエンジニアの実力は配列関数を覚えている数で決まるので、
54
+ 沢山眺めて使いこなせるようにしましょう。