为什么“回声'2'” .打印(2) + 3“ 打印 521?[已关闭]
2022-08-30 22:00:03
谁能说出下面表达的内部过程?
<?php echo '2' . print(2) + 3; ?>
// outputs 521
谁能说出下面表达的内部过程?
<?php echo '2' . print(2) + 3; ?>
// outputs 521
print
不是函数,因此括号并不像您想象的那样工作。它获取表达式 () 的值并输出它。它返回自身,该自身被连接到 ,然后被 ed。(2) + 3
5
1
'2'
echo
print(2) + 3
将产生 5(它与 或 相同)。由于在这种情况下,print 实际上不是一个函数,因此括号大多是无意义的。最后要注意的是,在 .print (2 + 3)
print 2+3
print
echo
到目前为止,输出为:5
echo '2' . print
将产生 21,因为打印始终返回 1
现在的输出是:'521'