我在写了一段很长的sint做了一些PHP代码后,我意外地写了这个:
[root@ip-10-160-47-98 test]# cat run.php
<?php
class MyTest {
public function run() {
var_dump(this.test);
}
}
$object = new MyTest();
$object->run();
[root@ip-10-160-47-98 test]# php run.php
string(8) "thistest"
[root@ip-10-160-47-98 test]#
现在,this.test应该是$ this-&gt; test,但是编译器真的很乐意让它运行。
有谁知道(this.test)如何转换成字符串“thistest”?
编译并运行php 5.3.2亚马逊实例ami-e32273a6(CentOS 5.4)
-daniel
答案 0 :(得分:24)
this
和test
隐式转换为字符串,.
是连接运算符。
答案 1 :(得分:0)
php搜索常量这个和常量测试,它没有找到它们因此引发Exception并将其转换为'this'和'test'并加入它们(dot用于连接字符串)