在非对象上调用成员函数children()但我需要继续执行

时间:2014-02-10 09:36:10

标签: php dom

我需要的是; 致命错误:在非对象上调用成员函数children() 我知道原因,但我需要继续执行,我不能 我的问题是,我想从我的页面中拍摄八张图像,然后我就这样做了;

do {
        if(is_Object($html2->find("#ficha_fotos",0)->children($j)) === true){
            if($html2->find("#ficha_fotos",0)->children($j)->children(0)->src){
                $imggran = $html2->find("#ficha_fotos",0)->children($j)->children(0)->src."<br />";
                $imggran = explode(".", $imggran);
                $imggran[2] = $imggran[2]."G";
                $salidaimg = implode('.',$imggran);
                echo $salidaimg;
            }
            $j++;
        }else {
            $j++;
        }
    } while($j < 50);

但是在某些页面中我得到的不到8个,所以我需要避免这个错误并继续执行。 感谢和抱歉给您带来的不便

1 个答案:

答案 0 :(得分:1)

试试这个

do {
    $isObject = false;
    if ( is_Object($html2->find("#ficha_fotos",0)) === true && is_Object($html2->find("#ficha_fotos",0)->children($j)) === true ) {
        $isObject = true;
    }
    if($isObject){