php面试完说我基础不好,一道基础php面试题,想不通

你下手太快了,我刚试出来点感觉。

你得到的真是 214 吗?php 版本是多少?

214。我去试一下。我作弊了,我去看print的函数说明了。

楼主不是说先说答案再去试么?

那怎么说“我作弊了”了呢?

214。我去试一下。我作弊了,我去看print的函数说明了。

虽然看函数的说明了但我只看了返回值的类型。学C语言养成的习惯。那句不是函数我根本就没注意到。另外echo用了这么长时间居然也没注意到这个不是函数,以前学过VB的原因吧。

那怎么说“我作弊了”了呢?

我不清楚print的返回值是什么,然后看了一下返回值就说我的答案了,所以说作弊了。

不知道啊 蛋疼啊

511

很奇怪吧?

其实也没什么奇怪的

print 实际上不是一个真正的函数(它是一个语言结构),所以你不需要使用括号参数列表。

也就是说 print(2) + 3 实际上是 print 2 + 3

但他却有一个永远为 1 的返回值

511 这个5是由 print(2) + 3 产生的

5 11 这个1是由 echo '1' 产生的

51 1 这个1是由 print 产生的

为什么不是115啊

echo '1'.print(2)+3;

中 '1'.print(2)+3 这个表达式必须计算完成后,才会传递给 echo

而 print(2)+3 打印 5 并返回 1

于是 5 就出现在最前面了

echo 实际打印的是 '1'.1 即 11

我懂了,作弊的是echo "1".(print"2")+3; 本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:php中文网

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值