disl 发表于 2017-3-28 12:48:37

匪夷所思的php语法

  如下例子:

"0" || '1'   ==> true
'0.0' || '1'==>false

貌似php做与或运算时,先将值类型转成了数值类型,再做与或。

但是对于 0.0 的转换又没有执行。

在看一个例子

echo ‘0.0’+1;    ==>1

这里0.0 又成功转换成了整数1;


同样的逻辑需求,却处处出现了不同的规则。

一直有这样一个看法。

php更适合一个文科生去学习的语言。

总感觉他没有系统严谨的逻辑规则,不像其他语言,规则之间是可以相互推导的。

而php可能只能靠经验和记忆。
  
补充一点对php的批判.

php作为一个脚本语言,设计如此强类型的运算规则,是非常得不偿失的.

导致了没必要的信息丢失.

关于这个规则,大家可以看看下面这个地址:
http://jianguang-qq.iteye.com/blog/462449
页: [1]
查看完整版本: 匪夷所思的php语法