PHP -防止在动态创建文本区域换行


PHP - Preventing Line breaks in Dynamically Created Text area

我有一个可以动态创建输入集的表单——见这里。

为了将从这些输入收集到的值推送到.csv表并将它们保存在一个单元格中,我使用了以下PHP函数。它从3个输入中收集内容,将其保存到.csv中的单个单元格中,并且对于输入的每次新迭代,它只是用"//"分隔条目,但将其保留在同一个单元格中(例如:President, 2015, I was the President//Vice President, 2014, I was the Vice President)。 PHP

$provincialInvolvement = $_POST["provincialInvolvement"];
$provincialInvolvementValues = "";
$e = 0;
foreach($provincialInvolvement as $piValue)
    {
        $provincialInvolvementValues .= $piValue;
        $e++;
        if($e % 3 == 0)
            {
                $provincialInvolvementValues .= "//";
            }
    }

我的问题是,因为最后一个输入是一个文本区,如果一个换行符被放入(有人按回车键),它打破了.csv的形式,并把它放在一个新的行。

我试图写一个函数到我的PHP的一部分,因为它记录到$provincialInvolvementValues的值,它删除了任何换行符,但我没有运气。

这个函数的问题是它不记录任何东西

$provincialInvolvement = $_POST["provincialInvolvement"];
$provincialInvolvementValues = "";
$e = 0;
foreach($provincialInvolvement as $piValue)
    {
        $provincialInvolvementValues .= $piValue;
        $e++;
        $provincialInvolvementValues = preg_replace( "/('r|'n)/ ", "", $provincialInvolvementValues ); 
        return $provincialInvolvementValues;
        if($e % 3 == 0)
            {
                $provincialInvolvementValues .= "//";
            }
    }

也许可以试试:preg_replace( "'r?'n's*", "", $provincialInvolvementValues) -换行符通常是'n'r'n,所以这可能会更好。

另外,return $provincialInvolvementValues;可能在循环中是错误的…