2011-01-27 16 views
0

私はデータを取得したいと思う一連の選択ボックスを持っています。これを行う最も効率的な方法は何ですか?今、私はその後、私は配列にオプションタグを取るために他のコードを実行していることを考えていた選択ボックスから配列へ

$html = file_get_contents('http://www.domain.com'); 

    preg_match_all("/name\=\'subscription\[division_id\]\' style\=\'width: 170px;\'>(.+?)<\/select>/is", $html, $matches); 

....考えていますが、これは、それは少し不必要に集中的であるかもしれないと思われる

+0

あなたの選んだ内容を得るために他の人のサイトを削っていますか? –

答えて

1

あなたの場合何らかの理由で掻き集めている場合、おそらくPHPのDOMXPathコマンドでページのhtmlを解析できます。私はすべてのコードを書き出すことはできませんが、使い始めることができます。

$xpath = new DOMXPath($dom); 
$select_values = $xpath->evaluate("/html/body//option"); 

その後、あなたはオプションの内容を取得してループを通してすべてを実行します。とにかく、このようなもので正規表現でナンセンスを避けることができます。

+0

HTMLに終了タグなどがない場合、DOMXPathが壊れますか? – Webnet

+0

それは多くの問題を回避することができますが、私はその特定のものについてはわかりません。オプションに終了タグはありませんか?そうであれば、ページ全体が正しく機能しないようです。 – dgig

関連する問題