質問編集履歴
2
test
CHANGED
File without changes
|
test
CHANGED
@@ -39,3 +39,25 @@
|
|
39
39
|
|
40
40
|
|
41
41
|
という意図が篭っているのではないか、と思いました。
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
【追記】
|
46
|
+
|
47
|
+
maisumakun様のご指摘を受けて
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
確かにそうでした。
|
52
|
+
|
53
|
+
しかし、以下のマニュアルの==演算子の緩い型変換比較表
|
54
|
+
|
55
|
+
https://www.php.net/manual/ja/types.comparisons.php
|
56
|
+
|
57
|
+
においては、
|
58
|
+
|
59
|
+
例えば文字列'php'は数値0との比較でtrueを返し、数値1との比較でfalseを返す、とあります。
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
型変換という概念と、==での型の相互変換という概念は、全く異なるもの、ということでしょうか。
|
1
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
PHPにおいて、任意の文字列の数値への型変換は0となっていますが、どうにも気持ち悪い定義だと思いました。
|
2
2
|
|
3
|
-
というのも、ブール値への
|
3
|
+
というのも、数値と文字列のブール値への型変換は、
|
4
4
|
|
5
|
-
1はtrue、0はfalseであり、
|
5
|
+
数値1はtrue、数値0はfalseであり、
|
6
6
|
|
7
7
|
空でない任意の(数字でない)文字列はtrue、空の文字列''はfalse、
|
8
8
|
|
9
|
-
となっているからです。
|
9
|
+
という対応なっているからです。
|
10
10
|
|
11
11
|
|
12
12
|
|