验证上传的文件服务器端

时间:2010-07-31 03:03:36

标签: php codeigniter csv

我有一些CSV文件需要上传到我在CodeIgniter中编写的网站。

我需要验证CSV以确保它们包含各种信息,列数匹配等等。

CI是否有任何类型的插件可以轻松实现这一目标?

1 个答案:

答案 0 :(得分:1)

上传文件后,打开文件并使用fgetcsv逐行浏览。

http://us3.php.net/manual/en/function.fgetcsv.php

它创建一个数组(在该链接中,第一个示例中的数组称为$ data),如果要查找列数,可以使用sizeof($ data)找到它。如果您需要特定的列内容或类型,可以使用各种正则表达式来解决它。说第3列必须是电子邮件地址:

$column_size = 8;

while($data=fgetcsv($p))
{
    if ( sizeof($data) < $column_size )
    {
        // handle wrong column count error here
    }

    if ( !is_email($data[2] ) // is_email is a fictional function
    {
        // handle error here
    }

    // other checks...
}

我不知道是否有CI插件,但无论如何它可能都不会那么容易。