在我的一些设置器中,我传递了一个对象数组。我想确保它只包含给定类的实例。读取文档,这里是我做的:PHP:确保数组仅包含某个类的对象
class Foo
{
public function __construct()
{
}
}
class ErrorFoo
{
public function __construct()
{
}
}
$ArrayObject = Array();
array_push($ArrayObject, new Foo());
array_push($ArrayObject, new Foo());
array_push($ArrayObject, new ErrorFoo());
$error = false;
foreach ($ArrayObject as $obj)
{
if ($obj instanceof Foo)
{
echo "ok" . '<br>';
}
else
{
echo "error" . '<br>';
$error = true;
}
}
你知道不是通过数组这样重复一个简单的方法?
不确定是否总是设置'$ error = true;'帮助。 –
oups,已修正 –
作为setter函数的一部分,您可以验证传入的对象类型?抛出异常如果类型不符合你想要的。这样做将确保任何获取器中返回的对象都是预期的类型。 – JParkinson1991