回答編集履歴
5
a
test
CHANGED
@@ -34,7 +34,7 @@
|
|
34
34
|
|
35
35
|
|
36
36
|
|
37
|
-
これだと`'20'`と`'2e1'`が等価になってしまうので,それを防ぎたいなら`ksort`して`===`ですね.PHPにあるソート関数は`sort
|
37
|
+
これだと`'20'`と`'2e1'`が等価になってしまうので,それを防ぎたいなら`ksort`して`===`ですね.PHPにあるソート関数は`sort`だけではありません.
|
38
38
|
|
39
39
|
|
40
40
|
|
4
a
test
CHANGED
@@ -20,7 +20,7 @@
|
|
20
20
|
|
21
21
|
$expected = ['age' => '20', 'name' => 'John'];
|
22
22
|
|
23
|
-
var_dump($actual == $expected); // bool(
|
23
|
+
var_dump($actual == $expected); // bool(true)
|
24
24
|
|
25
25
|
|
26
26
|
|
@@ -28,7 +28,7 @@
|
|
28
28
|
|
29
29
|
$expected = ['age' => '2e1', 'name' => 'John'];
|
30
30
|
|
31
|
-
var_dump($actual == $expected); // bool(
|
31
|
+
var_dump($actual == $expected); // bool(true)
|
32
32
|
|
33
33
|
```
|
34
34
|
|
@@ -50,7 +50,7 @@
|
|
50
50
|
|
51
51
|
ksort($actual); ksort($expected);
|
52
52
|
|
53
|
-
var_dump($actual === $expected); // bool(
|
53
|
+
var_dump($actual === $expected); // bool(true)
|
54
54
|
|
55
55
|
|
56
56
|
|
@@ -60,7 +60,7 @@
|
|
60
60
|
|
61
61
|
ksort($actual); ksort($expected);
|
62
62
|
|
63
|
-
var_dump($actual === $expected); // bool(
|
63
|
+
var_dump($actual === $expected); // bool(false)
|
64
64
|
|
65
65
|
```
|
66
66
|
|
3
a
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
|
9
|
+
この場合は `==` で比較すればいいかと.
|
10
10
|
|
11
11
|
|
12
12
|
|
@@ -63,3 +63,19 @@
|
|
63
63
|
var_dump($actual === $expected); // bool(False)
|
64
64
|
|
65
65
|
```
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
----
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
【蛇足】
|
74
|
+
|
75
|
+
|
76
|
+
|
77
|
+
逆に連想配列ではなく,数値添字配列で順番を問わず中身だけの比較をしたい場合,`assertEquals`のソートオプションが使えそうです.普通に自分でソート書いたほうがスッキリしそうな気はしますが…
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
- [ArrayComparator.php#L48-L51](https://github.com/sebastianbergmann/comparator/blob/master/src/ArrayComparator.php#L48-L51)
|
2
a
test
CHANGED
@@ -34,7 +34,7 @@
|
|
34
34
|
|
35
35
|
|
36
36
|
|
37
|
-
これだと`'20'`と`'2e1'`が等価になってしまうので,それを防ぎたいなら`ksort`して`===`ですね.
|
37
|
+
これだと`'20'`と`'2e1'`が等価になってしまうので,それを防ぎたいなら`ksort`して`===`ですね.PHPにあるソート関数は`sort()`だけではありません.
|
38
38
|
|
39
39
|
|
40
40
|
|
1
a
test
CHANGED
@@ -34,7 +34,7 @@
|
|
34
34
|
|
35
35
|
|
36
36
|
|
37
|
-
これだと`'20'`と`'2e1'`が等価になってしまうので,それを防ぎたいなら`
|
37
|
+
これだと`'20'`と`'2e1'`が等価になってしまうので,それを防ぎたいなら`ksort`して`===`ですね.
|
38
38
|
|
39
39
|
|
40
40
|
|
@@ -48,7 +48,7 @@
|
|
48
48
|
|
49
49
|
$expected = ['age' => '20', 'name' => 'John'];
|
50
50
|
|
51
|
-
|
51
|
+
ksort($actual); ksort($expected);
|
52
52
|
|
53
53
|
var_dump($actual === $expected); // bool(True)
|
54
54
|
|
@@ -58,7 +58,7 @@
|
|
58
58
|
|
59
59
|
$expected = ['age' => '2e1', 'name' => 'John'];
|
60
60
|
|
61
|
-
|
61
|
+
ksort($actual); ksort($expected);
|
62
62
|
|
63
63
|
var_dump($actual === $expected); // bool(False)
|
64
64
|
|