爆炸数组结果和回声。

时间:2012-09-21 10:12:00

标签: php arrays split return explode

一直在做一个小项目,并且已经陷入了我想要工作的部分。不确定我是否采取了错误的方法,并且有更好的方法,但是我们走了。

我在写入和读取的文本文件中有数据。 例如:(值以\ 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>";
       }

    }

我收到的错误是未定义的偏移误差,那么我究竟能够如何爆炸(或以任何其他方式分割数组结果)以正确回显它?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

不应该是explode("\t", $value);而不是explode("\t", $date);

您正在使用$value在迭代期间保存数组的当前值。 $date始终在迭代中被赋值为0,并且尝试爆炸它将导致错误。

相关问题