質問編集履歴

2

2019/03/26 05:19

投稿

WeilSpinor
WeilSpinor

スコア170

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

2019/03/26 05:19

投稿

WeilSpinor
WeilSpinor

スコア170

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