首页 > 解决方案 > 为什么 1...2 等同于 PHP 中的“10.2”?

问题描述

就在一秒钟前,我还在玩 PHP,试图弄清楚是否有原生范围函数(最终找到range. 但是,我尝试的其中一件事是:

echo 1...2;

令我惊讶的是返回字符串"10.2"。谁能告诉我究竟是什么语法对此负责?对于 splat 操作员来说,这似乎不是一个有效的地方。

标签: phptype-conversionoperatorssymbols

解决方案


该语句由三部分组成1...2。第一个计算为 number 1,第二个是字符串连接运算符,后一个计算为0.2。因此,您得到10.2.

等效示例代码:

$a = 1.;
$b = .2;
echo "a = $a\n";
echo "b = $b\n";
echo "a.b = ".($a.$b)."\n";

输出

a = 1
b = 0.2
a.b = 10.2

推荐阅读