を使用して別の Web サイトからデータを取得していますが、 class で要素file_get_contents()
を抽出する必要があります。<table>
inputpanelfields
...
<table class="inputpanelfields">
<!-- this is what I need -->
</table>
...
これどうやってするの?
を使用して別の Web サイトからデータを取得していますが、 class で要素file_get_contents()
を抽出する必要があります。<table>
inputpanelfields
...
<table class="inputpanelfields">
<!-- this is what I need -->
</table>
...
これどうやってするの?
$body = file_get_contents('http://example.org/path/to/page');
$d = new DOMDocument;
libxml_use_internal_errors(true);
$d->loadHTML($body);
libxml_clear_errors();
$x = new DOMXPath($d);
if (($table = $x->query('//table[contains(@class, "inputpanelfields")]'))) {
echo $d->saveHTML($table->item(0));
}
PHPで「Javascriptジョブ」を実行しようとしています。コンテンツが XHTML の場合、最善の方法は、コンテンツを DOMDocument にロードしてから、特定のノードを XPath で検索し、最終的に要素の出力を取得することです。
ここをチェックしてください:http://php.net/manual/fr/domdocument.loadhtml.php
注:うまくいくかどうかはわかりませんが、試してみてください。
それを見つけて引き出す関数を構築する必要があります。
PHP stristr を使用して、テーブルが存在するかどうかを確認できます。関数 substr_count は、複数回存在するかどうかを教えてくれます。
一度ページにあると仮定すると、 $pagepart = your file_get_contents および $term = "inputpanelfields" とします。
次に、これはページからテーブルを取得する必要があります
$end = mb_stristr($pagepart,$term,false); // Case insensitive; finds the first occurrence
$beg = mb_stristr($pagepart,$term,true); // Case insensitive; finds the first occurrence
$end = mb_stristr($end,'</table>',true); // Case insensitive
$beg = mb_strrichr($beg,'<table',false); // Case insensitive
$beg = str_replace($term,'',$beg);
お役に立てれば。
スティーブ