php 变量在前台html 的textarea 中如何换行,以及换行修改如何在PHP后台获取

31 篇文章 0 订阅
28 篇文章 2 订阅

这个问题看起来很简单也很容易。貌似换个行<br />不就可以了嘛,但是,真没想象中的那么简单啊啊啊啊啊!!!

一、换行

老做法:基于THINKPHP ,就是从redis中将数组取出来,显示在前台,但是要换行。

后台:

[php]   view plain  copy
  1. function tags_keywords(){  
  2.   
  3.        $this->showheadertitle('tags_keywords');  
  4.        $redis = D("Redis");  
  5.        $keywords_list = $redis->sMembers("Budou:segmentation:sourse"); //获取数据,在前台textarea中换行显示。  
  6.        $this->assign('keywords_list',$keywords_list);  
  7.        $this->display();  
  8.   
  9. }  

前台:

[html]   view plain  copy
  1. <textarea name="keywords_area" style="overflow: auto; display: inline; width: 884px; height: 298px;" rows="4" cols="170">  
  2. <volist name='keywords_list' id='key'>  
  3. {$key}\r\n      //没用  
  4. </volist>  
  5. </textarea>  

最后发现不管是加\r\n 还是<br /> 都不管用。我疯了。彻底。


原来,这个\r\n要加到php代码中。前台只需要读就可以了。擦。


再来:

[php]   view plain  copy
  1. function tags_keywords(){  
  2.   
  3.                $this->showheadertitle('tags_keywords');  
  4.                $redis = D("Redis");  
  5.                $keywords_list = $redis->sMembers("Budou:segmentation:sourse");  
  6.                $textarea = "";  
  7.                foreach($keywords_list as $value){  
  8.                        $textarea.= $value."\n";  
  9.                }  
  10.                $this->assign('keywords_list',$textarea);  
  11.                $this->display();  
  12.   
  13.         }  

[html]   view plain  copy
  1. <textarea name="keywords_area" style="overflow: auto; display: inline; width: 884px; height: 298px;" rows="4" cols="170">{$keywords_list}</textarea>  

直接这样就好了嘛。还有一点<textarea>内容</textarea>。里面的内容最后在一行写,不然,在页面显示会有空格。


二、PHP获取texteara 中换行的内容

在前台texteara中换号行之后,提交,PHP通过$_POST['texterea'] 获取字符串后,是要经过处理的,不然获取到的就是一整个字符串。

[php]   view plain  copy
  1. function modify_keywords_list(){  
  2.   
  3.                $keywords_post = $_POST['keywords_area'];  
  4.                $keywords_post = nl2br($_POST['keywords_area']);  //将换行换成 <br / >  
  5.                $keywords_post = explode("<br />",$keywords_post); // 然后再用<br />作为分隔符,变成数组。虽然变成数组了,还是value还是有空格的,要去空格  
  6.                foreach($keywords_post as $key){  
  7.   
  8.                         if(trim($key)){  //去空格。  
  9.                                $redis->sadd("Budou:segmentation:sourse", trim($key)); //去空格。  
  10.                         }  
  11.   
  12.                }  
  13.                  
  14.        }  

1. 先用PHP 函数: nl2br( ) ,将换行转换成<br />

2.用PHP 函数: explode('<br />',$data) 分割成数组。

3. 再用PHP 函数:trim( );去掉每一个value的空格。


搞定。。。。

转自:https://blog.csdn.net/think2me/article/details/8127528


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值