我试图从a.csv文件中读取数据以将其作为文本输出到网页上。PHP阅读CSV文件的问题
这是我第一次这样做,我遇到了一个讨厌的小问题。
我的.csv文件(默认情况下由Excel打开)有多行,我将整个东西作为一个长字符串读取。
这样的:
$contents = file_get_contents("files/data.csv");
在我提出这个实例文件中,有2行。
保罗Blueberryroad 85我们手电筒, 2008袋11月20日,下午4:39
海伦Blueberryroad 85我们lens13mm,手电筒,箱包,ExtraBatteries月 20,2008,16:41: 32
但通过PHP读取的字符串是这样的:
保罗; Blueberryroad 85;美国;手电筒,袋; 2008年4:39 11月20日,pmHell恩; Blueberryroad 85;美国; lens13mm,手电筒,箱包,ExtraBatteries; 2008年11月20日,16点41分32秒
我与分裂的:
list($name[], $street[], $country[], $accessories[], $orderdate[]) = split(";",$contents);
我要的是$名称[]包含“保罗”和“海伦”作为其内容。其他数组接收各自列的值。
相反,我只得到保罗和$订购日期[]内容
二○○八年十一月二十○日,4:39 pmHellen
因此,所有的行被连接起来。有人能告诉我我如何能够实现我所需要的?
编辑:找到的解决方案,只是一个werid件事剩余:
我使用这段代码,现在解决了这个问题:
$fo = fopen("files/users.csv", "rb+");
while(!feof($fo)) {
$contents[] = fgetcsv($fo,0,';');
}
fclose($fo);
出于某种原因,我allthough CSV文件只有2行,它返回2个数组和1个布尔值。前两个是我的数据数组,布尔值为0.
你为什么不使用fgetcsv? (http://php.net/fgetcsv) – 2008-11-22 16:05:51
不知道它感到直到这里提到 – Vordreller 2008-11-22 16:43:09