PHP-php的魔术方法__toString()的问题

Web程序数据库 Web程序数据库 主题:1214 回复:2505

PHP-php的魔术方法__toString()的问题

归属感 发布于 2017-07-04 字数 394 浏览 1237 回复 2
class A {

private $value;
public function __construct($value)
{
$this->value = $value;
}

public function __toString()
{
return $this->value;
}

}

class B extends A { }
$obj = new B(10);
if($obj==10) {
//逻辑处理
die('1');
}

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(2

虐人心 2017-08-24 2 楼

有两个问题:
1、__toString()魔术方法需要返回字符串;
2、$obj是个对象,按照比较运算符的运算规则,详见下图:

灵芸 2017-08-05 1 楼

class A {

private $value;
public function __construct($value)
{
$this->value = $value;
}

public function __toString()
{
return (string)$this->value;
}

}

class B extends A { }
$obj = new B(10);
if((string)$obj==10) {
//逻辑处理
die('1');
}

if($obj=='10') {
//逻辑处理
die('1');
}