PHP使用preg_split和explode分割textarea存放内容的方法分析


Posted in PHP onJuly 03, 2017

本文实例讲述了PHP使用preg_split和explode分割textarea存放内容的方法。分享给大家供大家参考,具体如下:

今天有个紧急的bug,说是后台在配置了白名单后,在手机端app无效,仍然显示内容。收到邮件后,便走了遍流程,发现后台配置白名单是在textarea里配置的,一行一个,再在代码里看,使用的是explode函数分割,其中分隔符使用的是\r\n,代码大致如下

explode('\r\n', $val);

之后,我便在自己的开发机上测试了下,发现这压根不会分割textarea存入数据库的内容,于是在手册上找,发现了一个很有用的函数preg_split

$str = '1
2
3
4
5';
print_r(preg_split("/\n/",$str));
/*
Array
(
  [0] => 1
  [1] => 2
  [2] => 3
  [3] => 4
  [4] => 5
)
*/

【update】

下午的时候经同事提醒,发现原来是分割符有问题,因为在chrome和firefox浏览器中textarea是带\n的换行符,而在ie中是\r\n的换行符,于是使用str_replace替换了下

$str = '1
2
3
4
5';
print_r(explode("\n", str_replace("\r\n", "\n", $str)));
Array
(
  [0] => 1
  [1] => 2
  [2] => 3
  [3] => 4
  [4] => 5
)
PHP 相关文章推荐
一个没有MYSQL数据库支持的简易留言本的编写
Oct 09 PHP
Apache 配置详解(最好的APACHE配置教程)
Jul 04 PHP
php array_pop()数组函数将数组最后一个单元弹出(出栈)
Jul 12 PHP
php 中英文语言转换类
Sep 07 PHP
php ci框架中加载css和js文件失败的原因及解决方法
Jul 29 PHP
基于递归实现的php树形菜单代码
Nov 19 PHP
php实现汉字验证码和算式验证码的方法
Mar 07 PHP
PHP 闭包详解及实例代码
Sep 28 PHP
php格式化时间戳
Dec 17 PHP
PHP中使用OpenSSL生成证书及加密解密
Feb 05 PHP
CI(CodeIgniter)框架实现图片上传的方法
Mar 24 PHP
php写入txt乱码的解决方法
Sep 17 PHP
PHP简单获取上月、本月、近15天、近30天的方法示例
Jul 03 #PHP
thinkPHP多表查询及分页功能实现方法示例
Jul 03 #PHP
PHP+Ajax实现的无刷新分页功能详解【附demo源码下载】
Jul 03 #PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
Jul 03 #PHP
php获取文章内容第一张图片的方法示例
Jul 03 #PHP
PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别分析
Jul 03 #PHP
PHP不使用内置函数实现字符串转整型的方法示例
Jul 03 #PHP
You might like
Thinkphp框架开发移动端接口(1)
2016/08/18 PHP
PHP使用ActiveMQ实现消息队列的方法详解
2019/05/31 PHP
做网页的一些技巧(续)
2007/02/01 Javascript
在Ajax中使用Flash实现跨域数据读取的实现方法
2010/12/02 Javascript
js根据日期判断星座的示例代码
2014/01/23 Javascript
比较常见的javascript中定义函数的区别
2015/11/09 Javascript
浅析javascript中的Event事件
2016/12/09 Javascript
JavaScript常用正则验证函数实例小结【年龄,数字,Email,手机,URL,日期等】
2017/01/23 Javascript
angularjs实现下拉列表的选中事件示例
2017/03/03 Javascript
Javascript实现购物车功能的详细代码
2018/05/08 Javascript
Layer.js实现表格溢出内容省略号显示,悬停显示全部的方法
2019/09/16 Javascript
Vue实现剪贴板复制功能
2019/12/31 Javascript
Vue使用Ref跨层级获取组件的步骤
2021/01/25 Vue.js
Python中的并发编程实例
2014/07/07 Python
python中元类用法实例
2014/10/10 Python
python简单实现计算过期时间的方法
2015/06/09 Python
详解Python下ftp上传文件linux服务器
2018/06/21 Python
Python正则表达式指南 推荐
2018/10/09 Python
基于python历史天气采集的分析
2019/02/14 Python
实例讲解Python中整数的最大值输出
2019/03/17 Python
使用django实现一个代码发布系统
2019/07/18 Python
TensorFlow梯度求解tf.gradients实例
2020/02/04 Python
python开发实例之Python的Twisted框架中Deferred对象的详细用法与实例
2020/03/19 Python
Python读取Excel数据并生成图表过程解析
2020/06/18 Python
使用html5 canvas 画时钟代码实例分享
2015/11/11 HTML / CSS
澳大利亚工具仓库:Tools Warehouse
2018/10/15 全球购物
社团文化节策划书
2014/02/01 职场文书
校园歌咏比赛主持词
2014/03/18 职场文书
大学生考试作弊检讨书
2014/09/21 职场文书
员工升职自荐信
2015/03/27 职场文书
龙猫观后感
2015/06/09 职场文书
Nest.js参数校验和自定义返回数据格式详解
2021/03/29 Javascript
python实现简单的名片管理系统
2021/04/26 Python
解决Go gorm踩过的坑
2021/04/30 Golang
Android自定义ScrollView实现阻尼回弹
2022/04/01 Java/Android
React四级菜单的实现
2022/04/08 Javascript