关于php构造函数的疑问
程序员文章站
2024-01-13 17:37:28
...
class Test
{
public $client;
public function __construct($obj)
{
$this->client = new Obj();
// ......
// 一系列操作
}
}
// 代码1
$client = (new Test())->client;
$client->method(); //报错
//代码2
$test = new Test();
$client = $test->client;
$cilent->method(); //正常
上述代码出现的原因是什么?php5.6不是版本的问题。
回复内容:
class Test
{
public $client;
public function __construct($obj)
{
$this->client = new Obj();
// ......
// 一系列操作
}
}
// 代码1
$client = (new Test())->client;
$client->method(); //报错
//代码2
$test = new Test();
$client = $test->client;
$cilent->method(); //正常
上述代码出现的原因是什么?php5.6不是版本的问题。
php什么版本呀?
(new Test($obj))->client
这种表达式5.4以前不支持
class Foo {
public function method(){
echo 'hi';
}
}
class Test {
public $client;
public function __construct($obj){
$this->client = $obj;
}
}
$obj = new Foo();
// 代码1
$client = (new Test($obj))->client;
$client->method();
上一篇: sql 删除重复记录
下一篇: 第一节 MongoDB介绍及下载与安装
推荐阅读
-
slashes 支持数组的ADDSLASHES的php函数
-
mysql - 关于varbinary类型中文数据——如何用php显示的问题!
-
PHP执行系统命令的有几个常用的函数_PHP教程
-
francisco lachowski PHP集成FCK的函数代码
-
php读mysql关于乱码问题的总结
-
关于Zend Framework PHP 通过ssl访问MYSQL的有关问题
-
基础补习:PHP易混淆函数的区分
-
php 中require和include引用url和 php的文件编码转换函数问题_PHP教程
-
php中用date函数获取当前时间有误的解决办法
-
PHP array_multisort() 函数的深入解析