我目前正在浏览问题Zend PHP 5 Certification Practice Test并看到以下内容:
print print('5') + print('4');
// output
// 461
// or
echo '3' + '0.5' , print('2') + 1;
// output
// 3.531
Run Code Online (Sandbox Code Playgroud)
它是如何工作的?http://php.net/manual/en/function.print.php中的描述和示例 没有说明任何内容......
Bar*_*mar 13
print它不是一个函数,它是一种语言结构.它总是返回1,其优先级低于算术运算符.所以
print print('5') + print('4');
Run Code Online (Sandbox Code Playgroud)
相当于:
print (print ('5' + print '4'));
Run Code Online (Sandbox Code Playgroud)
这将执行以下步骤:
print 4- 打印4和退货1.5 + 1,返回6.print 6- 打印6和退货1print 1- 打印1(也返回1,但没有任何结果如此无关紧要).所以
echo '3' + '0.5' , print('2') + 1
Run Code Online (Sandbox Code Playgroud)
相当于:
echo (3 + 0.5);
echo (print (2 + 1));
Run Code Online (Sandbox Code Playgroud)
这将执行以下步骤:
3 + 0.5,返回3.5echo 3.5,打印 3.52 + 1,返回3print 3,打印3和返回1.echo 1,打印 1| 归档时间: |
|
| 查看次数: |
267 次 |
| 最近记录: |