我需要使用csv文件。我想写一个使用csv文件的Web应用程序,用PHP编写。 问题是所有csv文件都有不同的换行/ r,/ n,/ r / n /。 我需要在所有这些中拥有相同的东西。 直到现在我这样做:
exec("sed -i 's/\r$//' files/uploads/$fileName"); // DOS to Unix
exec("sed -i 's/$/\r/' files/uploads/$fileName"); // Unix to DOS
最后所有人都有/ r / n。 但是,如果我得到一个带/ r作为换行符的csv文件,该怎么处理呢?
感谢您的帮助
答案 0 :(得分:1)
你在php中有很多选择。例如:
$f=file_get_contents("files/uploads/$fileName");
$f=str_replace("\r","",$f);
file_put_contents("files/uploads/$filename",$f);
这将从输入中删除所有RETURN字符(" \ r"),并使用换行符将文件写回(" \ n")。
我还没有看到只有" \ r"的CSV /电子表格文件字符,但假设你也可以这样做:str_replace(" \ r"," \ n")然后减少" \ n \ n"到单个" \ n" (再次使用str_replace)。
还有一个基于REGEX的解决方案,但今天早上我脑部的正则表达部分有点油炸。