本文实例讲述了php获取textarea的值并处理回车换行的方法。分享给大家供大家参考。具体实现方法如下:
一般来说,在html表单中textarea中我们按回车与换行都是一些ascii或特殊的字符的编码,如果不进行转换输出文字是没的排版的。
php获取textarea的值是十分简单的 textarea回车换行为 \\r\\n 下面看例子
HTML代码:
<Textarea name=\"test\" rows=\"3″ cols=\"20″ id=\"test\"></textarea>
PHP代码:
$str=$_GET[\'test\'];
echo $str.\'<br />\';
$arr=explode(\"\\n\",$str);
print_r($arr);
echo count($arr).\'<br />\';//回车数
$str1=nl2br($str);//回车换成换行
echo $str1;
所有代码:
<html>
<head>
<title></title>
</head>
<body>
<form action=\"\">
<textarea name=\"test\"></textarea>
<input type=\"submit\" />
</form>
<?php
$str=$_GET[\'test\'];
echo $str.\'<br />\';
$arr=explode(\"\\n\",$str);
print_r($arr);
echo count($arr).\'<br />\';//回车数
$str1=nl2br($str);//回车换成换行默认函数
echo $str1;
?>
</body>
</html>
再来看一段dz论坛中例子。不多说了,直接上代码:
$names = preg_split(\'/\\r\\n/\',$_POST[\'textarea\']);
foreach($names as $name){
// todo something eg: echo $name;
}
取值很简单,那么赋值呢,在textarea中输出换行符可没那么简单
$vals = get_from_mydb();
$tmp = \'\';
foreach($vals as $val){
$tmp .= $val.\'
\';
}
\"
\"和\"
\"是什么意思
相信大家都看到了,其实textarea中的回车变成字符就成\"\\n\"了,所以php处理textarea中的回车其实就是处理字符中的\"\\n\".
希望本文所述对大家的PHP程序设计有所帮助。