2

カレンダーを作成し、現在の日とすべてを強調表示するPHPスクリプトがあります。ウェブサイトを開いて次のような表を読み、「日付」の「情報」を取得してカレンダーに入れたいと思います。

<table>
<tr>
<th>Date</th>
<th>Info</th>
</tr>
<tr>
<td>2/20/2013</td>
<td>Meeting</td>
</tr>
<tr>
<td>2/24/2013</td>
<td>Another meeting</td>
</tr>
</table>

このコードで:

$url = $pageurl;
$content = file_get_contents($url);
$needle = $month . '/' . $list_day . '/' . $year;
if (strpos($content, $needle)) {
    $calendar .= '<p>STUFF</p><p>MORE STUFF</p>';
}

ある程度成功しました。カレンダーに表示される日に「STUFF」と「MORESTUFF」を出力できるようになりました。しかし今、私はその日のためにそのようなものが何であるかを正確に投稿したいと思います。これどうやってするの?どんな助けでもいただければ幸いです。

4

2 に答える 2

2

私はここで同様の質問に答えました。getCellValue()そこから関数をコピーして、次のように使用できます。

$dom = new DomDocument();
$dom->preserveWhiteSpace = false;

$dom->loadHtml('...table HTML here...');

$table = $dom->getElementsByTagName('table')->item(0);

print getCellValue($table, 'Info', array(
  'Date' => '2/20/2013',
));

これにより、要求された日付(「会議」)に対応する「情報」値が出力されます。

于 2013-02-17T17:56:31.820 に答える
1

DOMパーサーのようなものを使用することをお勧めします。Googleで「DOMParserPHP」を探しましたが、これが最初のリンクでした。

PHPでのDOM解析用のライブラリ

于 2013-02-17T17:48:43.920 に答える