うまくいけば、誰かがこれに光を当てることができます。
これは、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);
問題は何ですか?
助けてくれてありがとう。