2013-02-23 77 views
1

我对与一个隐藏的输入分离,像这样两个文本区前端的形式:插入换行符到字符串在PHP作为分隔符

<textarea name="top"> 
blah 
blah 
</textarea> 
<input type="hidden" name="foo" value="some string" /> 
<textarea name="bottom"> 
blah 
blah 
</textarea> 

当我在服务器端的这种形式,我想之前Concat的换行符和隐藏的输入后,像这样:

$text = $_Post['top'] . "\n" . $_Post['foo'] . "\n" . $_Post['bottom']; 

使用该换行字符作为分隔符后爆炸在我的程序像这样的目的:

​​

我的问题是,我添加到字符串的换行符不被爆炸识别为换行符,而是被视为字符串文字。我试过单引号,双引号,转义换行等,但由于某些原因,它们只是字符串。任何有关我在做什么错误的见解?

+2

为什么不使用不同的分隔符?像||一样 – CristiC 2013-02-23 06:02:23

+1

如果textareas包含换行符,该怎么办? – 2013-02-23 06:02:52

+0

你不能简单地使用逗号? – 2013-02-23 06:03:26

回答

1

内爆!谢谢@barmar给我的想法,把它作为一个数组发送。我不想做就是上面提到的原因,但我能够从字符串创建数组:

$textArray = array($_POST['top'], $_POST['foo'], $_POST['bottom']); 

然后换行字符作为分隔符破灭了。

$text = implode("\n", $textArray); 

其他所有工作都在希望在整个代码的其他地方。不知道为什么它没有工作之前没有爆发,所以如果你有任何见解,我全都耳熟能详。再次感谢@barmar