我有一个将数据提交到csv文件的表单。 当用户向字段输入逗号时,它会破坏我的csv结构。 我想转换输入的逗号,以便它们可以显示为角色。
我试过了:
$_POST["field"] = str_replace(",", "','", $_POST["field"]);
答案 0 :(得分:3)
您可以使用fputcsv()来撰写,fgetcsv()来阅读文件,它会自动转换您的字符串。
编写数据的简单示例:
$csv = fopen('file.csv', 'w');
$array = array($csv);
fputcsv($csv, $array);
阅读数据:
$csv = fopen('file.csv','r');
print_r(fgetcsv($csv));
答案 1 :(得分:1)
使用html编码进行即时缓解,但我仍建议使用phpExcel
$comma=",";
$_POST["field"] = str_replace(",", $comma, $_POST["field"]);
答案 2 :(得分:0)
可能不是最佳答案,但确实有效。
您可以在输入CSV时用随机字符串替换逗号,如下所示:
$commastring = str_replace(",", "/zwdz/", $tempstring);
然后当你需要在你的网站上的某个地方输出逗号(如果是数据库网站)你可以做相反的str_replace
答案 3 :(得分:0)
你可以像这样逃避昏迷:
$_POST["field"] = str_replace(",", "\,", $_POST["field"]);
或者你可以把字符串放在引号
中$_POST["field"] = "'".$_POST["field"]."'";