0

小さなプロジェクトに取り組んでいて、作業しようとしている部分で行き詰まっています。私が間違ったタイプのアプローチを取っているかどうかはわかりませんが、もっと良い方法がありますが、ここに行きます。

書き込みと読み取りが可能なテキスト ファイルにデータがあります。例: (値は \t で区切られます)

S1684    This is a status    share   20/9/2012           share;

私がやっていることは、ファイルを検索し、一致するものを配列の一部として返すことです。検索は正常に機能しており、検索クエリを含む各行を返すことができます。唯一の問題は、結果を爆発させて、返す内容を適切にフォーマットできるようにすることです。これは、それを扱う主要なチャンクです。

if(preg_match_all($pattern, $data, $matches)){
       echo "<h3>Results:</h3>";

       echo implode("<p>\r\n", $matches[0])."</p>";

       foreach ($matches as &$value) {
        $date =0;
         list($statusCode, $status, $share, $date, $like, $comment, $share) = explode("\t", $date);

         echo "<h4>Status:".$status."</h4>";
         echo "<h4>Status Code:".$statusCode."</h4>";
       }

    }

私が受け取ったエラーは未定義のオフセット エラーです。それを適切にエコーするためにどのように展開 (または配列の結果を他の方法で分割) することができますか?

どんな助けでも大歓迎です。

4

1 に答える 1

0

explode("\t", $value);代わりにすべきではありませんかexplode("\t", $date);

$value反復中に配列の現在の値を保持するために使用しています。$date反復では常に 0 が割り当てられており、爆発しようとするとエラーが発生します。

于 2012-09-21T10:28:05.337 に答える