【发布时间】:2013-02-23 06:00:37
【问题描述】:
我在前端有一个表单,其中有两个由隐藏输入分隔的文本区域,如下所示:
<textarea name="top">
blah
blah
</textarea>
<input type="hidden" name="foo" value="some string" />
<textarea name="bottom">
blah
blah
</textarea>
当我在服务器端获得此表单时,我想在隐藏输入之前和之后连接一个换行符,如下所示:
$text = $_Post['top'] . "\n" . $_Post['foo'] . "\n" . $_Post['bottom'];
为了在我的程序中使用该换行符作为分隔符,以便稍后在我的程序中爆炸:
$arrayOfTextSplitByNewlines = explode("\n", $text);
我的问题是我添加到字符串中的换行符没有被explode识别为换行符,而是被视为字符串文字。我尝试过单引号、双引号、转义换行符等,但由于某种原因,它们只是字符串。关于我做错了什么的任何见解?
【问题讨论】:
-
为什么不使用不同的分隔符?有点像 ||
-
如果文本区域包含换行符怎么办?
-
不能用逗号吗?
-
您编写的代码应该可以工作,换行符应该可以识别。你确定你没有使用单引号?
\n只翻译成双引号中的换行符。 -
但是你为什么要这样做呢?为什么不直接创建一个数组
$text = array($_POST['top'], $_POST['foo'], $_POST['bottom']);
标签: php html newline concatenation