0

私はこの次のコードを使用していました:

<?

$file = file("http://www.schoolclosingsnetwork.com/output/clearchannel/wgyweb.asp");

while ($row = each($file)) {
    $match = preg_match("/\"(.*)\"\,\"(.*)\"/i", $row[1], $matches);
    echo '<b>' . $matches[1] . '</b><br>';
    echo $matches[2] . '<br><br>';
}

if ($match == 0) {
    echo '<p>No announcements found.</p>';
}

?>

学校の閉鎖と遅延のフィードを取得します。これは問題なく機能しています。しかし、今日の時点で、それは機能しなくなりました。

それが引っ張っている情報は下にあります$file

通常、出力は次のようになります。

学校名 休校・延期

今、私が得たのは、一致するものが見つからなかったかのように、アナウンスが見つかりませんでした。

多分私は何かを見落としていますか?通常、PHP は日常生活に欠かせないものではないため、私は PHP にあまり熟練していません。

そのため、どんな助けでも大歓迎です。

4

1 に答える 1

1

解析しようとしているデータは CSV 形式のデータです。str_getcsvデコードするなど、より適切な関数を使用する必要があります。

$file = file("http://www.schoolclosingsnetwork.com/output/clearchannel/wgyweb.asp");

foreach ($file as $row) {
    $matches = str_getcsv($row);
    echo '<b>' . $matches[0] . '</b><br>';
    echo $matches[1] . '<br><br>';
}
于 2013-03-08T20:12:45.440 に答える