Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么这段代码在调用多个->函数的所有函数中抛出意外语法错误_Php - Fatal编程技术网

Php 为什么这段代码在调用多个->函数的所有函数中抛出意外语法错误

Php 为什么这段代码在调用多个->函数的所有函数中抛出意外语法错误,php,Php,为什么这个代码会抛出 语法错误,意外的'->'T_OBJECT_运算符,应为''or';' PHP7.1 PHP无法理解这一点。它无法确定第一部分是对构造函数的调用。使用帕伦斯 <?php class TestHtml { public function Send() { return $this; } public function Dispose() { return $this; } public function ToString() { return 'D

为什么这个代码会抛出

语法错误,意外的'->'T_OBJECT_运算符,应为''or';'

PHP7.1


PHP无法理解这一点。它无法确定第一部分是对构造函数的调用。使用帕伦斯

<?php
class TestHtml
{
    public function Send() { return $this; }
    public function Dispose() { return $this; }
    public function ToString() { return 'Done'; }
}
echo (new TestHtml)->Send()->Dispose()->ToString(); // there error 
为了好玩,您可以创建一个静态函数来创建类

<?php
class TestHtml
{
    public function Send() { return $this; }
    public function Dispose() { return $this; }
    public function ToString() { return 'Done'; }
    public static function make() { return new self; }
}
echo TestHtml::make()->Send()->Dispose()->ToString();

回显新的TestHtml->Send->Dispose->ToString;更多的括号总是答案谢谢你们所有人的好问题答案这对我很有帮助
<?php
class TestHtml
{
    public function Send() { return $this; }
    public function Dispose() { return $this; }
    public function ToString() { return 'Done'; }
    public static function make() { return new self; }
}
echo TestHtml::make()->Send()->Dispose()->ToString();