对没有数字的字符串进行类型转换,产生结果> 0?

时间:2016-06-20 11:01:45

标签: php casting

php中,我使用(int) $variable将值转换为INT

到目前为止我的经验如下......

Input              (int) Output
abcd                0
12abcd              12
abcd12              0
'something weird'   <0 ??

如果我将“一个没有数字/数字的字符串”进行类型转换,它是否会产生大于0的结果?

1 个答案:

答案 0 :(得分:1)

  

在数值上下文中计算字符串时,结果值   和类型确定如下。

     

如果字符串不包含任何字符'。','e'或'E'   并且数值适合整数类型限制(由...定义)   PHP_INT_MAX),该字符串将被计算为整数。在所有其他   案例将被评估为浮动。

     

该值由字符串的初始部分给出。 如果是字符串   从有效的数字数据开始,这将是使用的值。   否则,该值将为0(零)。有效数值数据为   可选符号,后跟一个或多个数字(可选地包含一个   小数点),后跟可选的指数。指数是一个   'e'或'E'后跟一个或多个数字。

Source