2011-08-12 7 views
6

私はXpathでいくつかのHTMLを解析しようとしていますが、得たいリンクをいくつかのjavascriptによって生成し、通常のアンカーを使用していません。次のようにJavascriptを次のとおりです。PHPへのJavascript変数の掻き取り

<script type="text/javascript"> 
    var Hyperurl="ab5"; 
    var Hyperlink="46439157"; 
</script> 

今、私は経由してスクリプトコードをつかむためにXPathを使用しました:返し

$xpath->query('//script[contains(.,"Hyper")]'); 

var Hyperurl="ab5";var Hyperlink="46439157"; 

私の質問です。どのようにしてこのデータをparse_urlなどのような配列にするのですか?文字列を格納する変数をpreg_match_allするだけですか?もしそうなら、私はどんな正規表現を使用しますか?または、必要なデータを解析して取得するためのより良い方法がありますか?

ありがとうございます!

答えて

3

あなたが試みることができる:

preg_match_all('/"(.*?)"/', $variables, $array); 

は、私はあなたの変数はその後、$配列[1]と$配列になると思います[2]。

+0

チャームのように働いた。どうもありがとう。私は本当に正規表現でより良くなる必要があります。私はいつも助けが必要です – tr3online

2

あなたは、変数名が含まれます、そして$matches[3]は、その値が含まれます。この

preg_match_all('/var\s+(\w+)\s*=\s*(["\']?)(.*?)\2;/i', $js, $matches); 

$matches[1]を使用することができます。

関連する問題