【发布时间】:2012-12-27 00:54:19
【问题描述】:
我有一些代码,用户可以通过数据库设置任意数量的数组元素。我是基于键名的鸭子类型函数,但并非所有键名都是要调用的对象,我不能保证键可以按静态顺序排列。代码类似这样:
$arr = get_arr_from_db();
foreach($arr as $key => $val){
if($obj = new $key){
unset($arr[$key]);
$obj->give_data($arr);
break;
}
}
$obj->quack();
上面的代码不起作用,因为$obj = new $key 会死。有什么办法可以防止上述循环在对象创建失败时死掉?
【问题讨论】:
标签: php error-handling duck-typing