このスクリプトは、ほんの少しのJavaScriptスニペットを出力している - あなたが実際にあなたがPHPでその結果をキャプチャしたい場合には、ブラウザで実行できるようにする必要はありませんの
// Assuming you have [allow_url_fopen][1] enabled
$js = file_get_contents('http://www.gta4.it/stat/view_stats.js.php?mode=0');
$value = trim(str_replace(array("document.write('", "');"), '', $js));
echo $value; // Outputs 9, the current value of the JS
Demo
JSスニペットが変更された場合(空白を導入したり、引用タイプを変更するなど)、スニペットから数を抽出するために正規表現を使用することができます。このような何か作業をする必要があります:
$js = file_get_contents('http://www.gta4.it/stat/view_stats.js.php?mode=0');
$value = preg_replace('/^\s*document\.write\(\s*[\'"](\d*)[\'"]\s*\)\s*;\s*$/im', '$1', $js);
echo $value; // Outputs 11, the now current value of the JS
Demo
が、場合何らかの理由で、あなたがしたい/それは、あなたがこのような何かを行うことができます値をキャプチャする前に、ブラウザで実行させる必要性を、私は」が、標準に準拠しておらず、かなりハックしているようです。
- ラップコンテナの内容を取得するためのコンテナ内
<script>
タグ、おそらく<span>
または<div>
- 使用JS。
- AJAXを使用して結果をサーバーに送信します。
サンプル(未テスト):あなたは任意のJavaScript関数と同様のJavaScript/HTML
<span id="getvar" style="display: none;">
<script type="text/javascript" src="http://www.gta4.it/stat/view_stats.js.php?mode=0"> </script>
</span>
<script type="text/javascript">
var getvar = document.getElementById('getvar');
var stat = parseInt(getvar.innerText || getvar.textContent);
</script>
これはあなたのページがiframeのページと同じドメインにある場合にのみ機能します。 –