最後に配列を作成するphpスクリプトを使用してサイトをスクリーンスクレイピングしており、これをjavascript呼び出し元関数に送り返します。以下のコードでは、'print_r' を使用して出力しようとしましたが、まったく結果が得られません (?)。要素 (例: $addresses[1]) をエコーアウトすると、要素が表示されます。
では、php 関数から何も得られないのはなぜでしょうか。また、配列を呼び出し元の js 関数に送り返すにはどうすればよいのでしょうか。
よろしくお願いします!
js:
$.post(
"./php/foo.php",
{
zipcode: zipcode
},
function(data) {
$('#showData').html(data);
}
);
php:
$tempAddresses = array();
$addresses = array();
$url = 'http://www.foo.com/addresses/result.jspv?pnr=' . $zipcode;
$html = new simple_html_dom();
$html = file_get_html($url);
foreach($html->find('table tr') as $row) {
$cell = $row->find('td', 0);
array_push($tempAddresses, $cell);
}
$tempAddresses = array_unique($tempAddresses);
foreach ($tempAddresses as $address) {
array_push($addresses, $address);
}
print_r($addresses);