我有一个如下的类:
class Fields implements ArrayAccess, Countable, SeekableIterator
{
$this->_fields = array();
...continue
}我想让我的类具有以下布尔功能
$myArray = new Fields();
if($myArray == false)
{
echo 'It is empty';
}如何在我的类中实现上述行为
发布于 2013-02-08 19:58:40
对于你的“问题”,这不是一个很好的解决方案,但它是有效的。
class Fields implements ArrayAccess, Countable, SeekableIterator
{
protected $_fields = array();
// ...continue
public function __invoke() {
return $this->_fields == true;
}
}我简单地实现了一个__invoke()方法,如果对象被用作函数,就会调用该方法。如果您现在执行以下操作,它将按预期工作。
$myArray = new Fields();
if($myArray() == false)
{
echo 'It is empty';
}这可能不是最好的方式,也不是您应该使用__invoke的方式,但这是有可能的。
https://stackoverflow.com/questions/14771909
复制相似问题