回答編集履歴

5

a

2016/04/14 04:48

投稿

mpyw
mpyw

スコア5223

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

2016/04/14 04:48

投稿

mpyw
mpyw

スコア5223

test CHANGED
@@ -20,7 +20,7 @@
20
20
 
21
21
  $expected = ['age' => '20', 'name' => 'John'];
22
22
 
23
- var_dump($actual == $expected); // bool(True)
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(True)
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(True)
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(False)
63
+ var_dump($actual === $expected); // bool(false)
64
64
 
65
65
  ```
66
66
 

3

a

2016/04/14 04:42

投稿

mpyw
mpyw

スコア5223

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

2016/04/14 04:40

投稿

mpyw
mpyw

スコア5223

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

2016/04/14 04:34

投稿

mpyw
mpyw

スコア5223

test CHANGED
@@ -34,7 +34,7 @@
34
34
 
35
35
 
36
36
 
37
- これだと`'20'`と`'2e1'`が等価になってしまうので,それを防ぎたいなら`asort`ですね.
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
- asort($actual); asort($expected);
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
- asort($actual); asort($expected);
61
+ ksort($actual); ksort($expected);
62
62
 
63
63
  var_dump($actual === $expected); // bool(False)
64
64