curl で取得したページで正規表現を使用して値を取得するスクリプトがあります。
コード:preg_match('/<h2>([\d\,]+)<\/h2>/', $curl_exec, $matches);
print_r($matches)
私がブラウザにいるとき、それは常にそこにあります。
このスクリプトを cron ジョブで使用して、10 分ごとに結果を取得しています。自分でテストして「php script.php」を使用すると、取得したいデータの未定義のインデックスが常に表示されますが、「php script.php」をもう一度実行すると機能します。誰がこれを引き起こしているのか知っていますか? 回避策はありますか?
$CurlHandle = curl_init($StatsUrl);
curl_setopt($CurlHandle, CURLOPT_RETURNTRANSFER, true);
curl_setopt($CurlHandle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($CurlHandle, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/17.0 Firefox/17.0");
$Data = curl_exec($CurlHandle);
preg_match("/<h2>([\d\,]+)<\/h2>/", $Data, $Matches);
print_r($Data);
if(!isset($Matches[1])) exit('Irrecoverable error.');
$PlayerCount = str_replace(",", "", $Matches[1]);
$CurrentTime = time();