【发布时间】:2015-04-11 00:36:52
【问题描述】:
想在对象中查找字符串,在网上找到了这段代码,但是现成的好像不行,可以这么说:
private static function in_object($val, $obj) {
if($val == ""){
trigger_error("in_object expects parameter 1 must not empty", E_USER_WARNING);
return false;
}
if(!is_object($obj)){
$obj = (object)$obj;
}
foreach($obj as $key => $value){
if(!is_object($value) && !is_array($value)){
if(strpos($value,$val)!==FALSE){
return true;
}
}elseif(is_array($value)) {
if(in_array($val, $value)!==FALSE){
return true;
}
}else{
return self::in_object($val, $value);
}
}
return false;
}
它不会返回错误消息,屏幕只是保持空白。我正在搜索的对象将包括数组,它是我想要测试某些文本字符串的数组之一。
希望这有一个小错误并且可以轻松修复。或者其他一些解决方案?
【问题讨论】:
-
该类必须实现
Iterator接口。见php.net/manual/en/language.oop5.iterations.php -
您需要更具体地说明什么不起作用 - 您是否收到错误消息?或者是否有一个具体的例子,你可以给出结果不是你期望/想要的? (请编辑问题并添加详细信息,不要只是将它们发布为 cmets。)