PHP preg_match给出了错误的值

时间:2015-11-09 15:19:17

标签: php csv preg-match explode

我使用php构建了一个csv文件,并尝试获取2013年,2014年和2015年的数据,并在以后构建它们。

我使用了preg match但是这仍然让我从文件中获得了所有年份。

代码如下所示:

$sql = "SELECT * FROM `table 1`";
$result = mysql_query($sql);

while ($row = mysql_fetch_assoc($result))
{

    $print2013 = "";
    $print2014 = "";
    $print2015 = "";

    $explode = explode("\r\n", $row['COL 19']);

    foreach ($explode as $key => $value19b)
    {
        if(preg_match('/2013/', $value19b))
        {
            $print2013 .= "\"$value19b\r\n\"";
        }

        if(preg_match('/2014/', $value19b))
        {
            $print2014 .= "\"$value19b\r\n\"";
        }

        if(preg_match('/2015/', $value19b))
        {
            $print2015 .= "\"$value19b\r\n\"";
        }

        echo $print2013;
        echo $print2014;
        echo $print2015;
    }
}

这应该保存在变量$ print2013的所有2013年的数据库中,但我也得到了2014年和2015年的变量(对于其他变量)

如果我回应我得到的例子:

[COL 19] => 14.12.2014 sent mail
6.11.13: control
26.6.2015 blabla
...

有谁知道为什么会这样。

0 个答案:

没有答案