我想使用此代碼
windows csv和mac csv有什麼區別?
if (($handle = fopen($csvFilePath, "r")) !== FALSE) {
$c=0;
$string="";
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
if($c>0)
{
if(($data[$email]!="") and ($data[$firstname]!="") and ($data[$lastname]!=""))
{
$string.='(1,';
$string.="'".$data[$email]."',";
$string.="'".$data[$firstname]."',";
$string.="'".$data[$lastname]."',";
$string.="'".Yii::app()->params['clientimporttext']."'";
$string.='),';
}
}
$c++;
}
fclose($handle);
}
這是工作的罰款與Windows CSV解析一個CSV文件。
但是當我創建從MAC一個csv並解析它不工作。(它不能識別線的端部),
還當我打開相同的窗戶CSV與Mac和使用相同的代碼是解析不工作。
但是當我將它保存爲Windows csv。它再次運作。
所以實際上wat是mac csv和windows csv的區別?
這兩個分隔符是不同的嗎?
我應該如何更改代碼以使其適用於兩者?
差異是結束字符的行....注意:如果PHP讀取文件時無法正確識別行結尾,或者由Macintosh創建計算機,啓用auto_detect_line_endings運行時配置選項可能有助於解決問題。 – 2013-05-13 13:52:56
看看'auto_detect_line_endings' – 2013-05-13 13:54:20