PHPfgetcsv定义和用法(与Windows和Linux的兼容性问题)
PHP fgetcsv()函数从文件中读取指针线和解析CSV字段。
类似于PHP fgets(),PHP fgetcsv()解析行读并找出CSV格式,然后返回一个数组包含这些字段。
Fgetcsv()返回false时,它是错误的,包括当文件结束。
注:从PHP 4.3.5,PHP fgetcsv()是二进制安全操作。
语法
Fgetcsv(文件长度、分离器、附件)
参数
描述
文件
这是必要的,需要检查的文件。
长度
可选的。指定行的最大长度。它必须大于CVS文件中最长的行。
这个参数在PHP 5中是可选的,在PHP 5之前是必需的。
如果忽略这个参数(设置为0的版本后,PHP 5.0.4),然后没有长度的限制,但它可能会影响执行效率。
分离器
可选。设置字段分隔符(只允许一个字符),默认值是逗号。
圈地
可选。设置字段环绕(允许只有一个字符),默认值是双引号。
这个参数添加到PHP 4.3.0.hints和笔记
注意:CSV文件中的空行将返回一个包含一个null字段的数组,它不会被视为一个错误。
注意:这个函数是地区设置敏感。例如,如果郎将en_us.utf-8,单字节编码的文件会读取错误。
注意:如果你遇到了PHP,你不能认识到Macintosh文件结束时,你读的文件,你可以激活auto_detect_line_endings运行时配置选项。
例1
复制代码代码如下所示:
< PHP
文件大小= fopen(CSV 联系人。
print_r(fgetcsv(文件));
Fclose(文件);
>
CSV文件:
乔治,约翰,托马斯,美国杰姆斯,Adrew,马丁,美国
输出相似:
数组({ 0 } { 1 } =乔治=约翰{ 2 } =托马斯{ 3 } =美国)
例2
复制代码代码如下所示:
< PHP
文件大小= fopen(CSV 联系人。
而(!Feof(文件)){ print_r(fgetcsv(文件));
} Fclose(文件);
>
CSV文件:
乔治,约翰,托马斯,美国杰姆斯,Adrew,马丁,美国
输出相似:
阵列({ 0 } { 1 } = >乔治>约翰>托马斯{ 2 } = { 3 } = >美国(数组{ 0 }杰姆斯{ 1 } = = > >安德鲁{ 2 } = >马丁{ 3 } = >美国)
Windows与Linux的兼容性
今天有问题的报道为Linux平台fgetcsv处理数据在空气中产生的第一个思想,事实上这个问题,PHP版,不介意在窗口版本和同事发展没有问题,但是他的书和服务器上,并使用Linux系统有空数据同事的问题
谷歌
设置区:中文简体UTF-8编码
复制代码代码如下所示:
setlocale(lc_all,'zh_cn。UTF-8);