0

希望有人可以对此有所了解,

这是在 php pthreads 包的“工作”线程中启动的。

我使用加载页面$html = file_get_html("http://www.google.com/");

如果我print_r($html)此时得到:

simple_html_dom Object
(
    [root:simple_html_dom:private] => simple_html_dom_node Object
        (
            [nodetype] => 5
            [tag:simple_html_dom_node:private] => text
            [attr:simple_html_dom_node:private] => Array
                (
                    [tag] => root
                )
            [children:simple_html_dom_node:private] => simple_html_dom_node Object
                (
                    [nodetype] => 1
                    [tag:simple_html_dom_node:private] => html
                    [attr:simple_html_dom_node:private] => Array
                        (
                        )

                    [children:simple_html_dom_node:private] => simple_html_dom_node Object
                           (
                                [nodetype] => 1
                                [tag:simple_html_dom_node:private] => head
                                [attr:simple_html_dom_node:private] => Array
                           (
                            )...

然后,如果我尝试 $html->find('a',0)、$html->find('a') 甚至像 $html->find('head') 之类的东西,并打印结果,我总是会得到一个空数组。

class Product extends Stackable{
    function __construct($prod_id,$link)
    {
        $this->prod_id=$prod_id;
        $this->link=$link;
    }

    public function get_data($country)
    {
        //AMAZON API XML REQUEST
        return $xml; //XML file
    }

    public function parse_data($xml)
    {
        $product = array();
       //PARSE PRODUCT XML INTO ARRAY
        return $product; 
    }

    public function update_price($product)
    {
        $html = file_get_html($this->link);
        print_r ($html->find('a'));
    }

    public function run()
    {
        $xml = $this->get_data('US');
        $product = $this->parse_data($xml);
        $this->update_price($product);
    }
}

$product = new Product(ID,URL);
$worker = new Worker();
$worker->start();
$worker->stack($product);

可能是什么问题?

提前感谢您的帮助。

4

0 回答 0