PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法分析


Posted in PHP onFebruary 04, 2017

本文实例讲述了PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法。分享给大家供大家参考,具体如下:

环境错误级别:error_reporting =E_ALL

某天我在研究一下php下的正则替换函数perg_replace(),

示例:

代码:

$subject="2222<b>a</b>2222fff222222222A22222";
$pattern = "/(a)/e";
$replacement= "md5($1)";//$1,取匹配到的内存变量的值(\1也可以,只不过要注意双引号内的转义)
echo preg_replace($pattern,$replacement, $subject);

结果:

虽然结果是对的,但是报了如下的错误:

Notice: Use of undefined constant a - assumed 'a' in D:\xampp\htdocs\studyRoom\regular\index.php(18) : regexp code on line 1

造成这原因的是在$replacement= "md5($1)";中的md5()方法,在参数传递的时候,参数没有加单引号或者双引号,系统就认为是个常量,所以就出现了这样的问题。改成如下 即可:

$replacement= "md5('$1')";(或:$replacement= "md5('\\1')";)

注:在取匹配到的内存变量的值的时候可以用"$1"或者"\1"这样的形式.

PHP 相关文章推荐
PHP 开源AJAX框架14种
Aug 24 PHP
php 读取文件乱码问题
Feb 20 PHP
linux系统上支持php的 iconv()函数的方法
Oct 01 PHP
PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用
May 07 PHP
php中session使用示例
Mar 29 PHP
PHP中使用Imagick实现各种图片效果实例
Jan 21 PHP
php利用反射实现插件机制的方法
Mar 14 PHP
PHP环境中Memcache的安装和使用
Nov 05 PHP
PHP爬虫之百万级别知乎用户数据爬取与分析
Jan 22 PHP
深入理解PHP原理之执行周期分析
Jun 01 PHP
Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
Jul 13 PHP
PHP实现使用DOM将XML数据存入数组的方法示例
Sep 27 PHP
Yii2实现多域名跨域同步登录退出
Feb 04 #PHP
PHP使用mysqli操作MySQL数据库的简单方法
Feb 04 #PHP
PHP使用preg_split()分割特殊字符(元字符等)的方法分析
Feb 04 #PHP
用PHP的socket实现客户端到服务端的通信实例详解
Feb 04 #PHP
关于PHP内置的字符串处理函数详解
Feb 04 #PHP
详谈PHP面向对象中常用的关键字和魔术方法
Feb 04 #PHP
浅谈PHP中的错误处理和异常处理
Feb 04 #PHP
You might like
PHP中Closure类的使用方法及详解
2015/10/09 PHP
PHP常用设计模式之委托设计模式
2016/02/13 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
jquery 选项卡效果 新手代码
2011/07/08 Javascript
JavaScript 布尔操作符解析  &amp;&amp; || !
2012/08/10 Javascript
跟我学习javascript的for循环和for...in循环
2015/11/18 Javascript
js实现新年倒计时效果
2015/12/10 Javascript
JS、jQuery中select的用法详解
2016/04/21 Javascript
JavaScript 深层克隆对象详解及实例
2016/11/03 Javascript
微信小程序wepy框架笔记小结
2018/08/08 Javascript
微信小程序实现即时通信聊天功能的实例代码
2018/08/17 Javascript
详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)
2018/11/12 Javascript
js prototype和__proto__的关系是什么
2019/08/23 Javascript
用python + openpyxl处理excel2007文档思路以及心得
2014/07/14 Python
Python使用filetype精确判断文件类型
2017/07/02 Python
python的文件操作方法汇总
2017/11/10 Python
Python中xrange与yield的用法实例分析
2017/12/26 Python
用python实现的线程池实例代码
2018/01/06 Python
基于DATAFRAME中元素的读取与修改方法
2018/06/08 Python
python实现点对点聊天程序
2018/07/28 Python
python 获取键盘输入,同时有超时的功能示例
2018/11/13 Python
pycharm 实现显示project 选项卡的方法
2019/01/17 Python
Python+opencv+pyaudio实现带声音屏幕录制
2019/12/23 Python
如何基于python对接钉钉并获取access_token
2020/04/21 Python
Python环境管理virtualenv&amp;virtualenvwrapper的配置详解
2020/07/01 Python
HTML5几个设计和修改的页面范例分享
2015/09/29 HTML / CSS
StringBuilder和String的区别
2015/05/18 面试题
爱情保证书范文
2014/02/01 职场文书
企业安全生产演讲稿
2014/05/09 职场文书
2014年高中教师工作总结
2014/12/19 职场文书
2015秋季开学演讲稿范文
2015/07/16 职场文书
新年祝酒词大全
2015/08/11 职场文书
《风筝》教学反思
2016/02/23 职场文书
python单元测试之pytest的使用
2021/06/07 Python
Java线程的6种状态与生命周期
2022/05/11 Java/Android
Springboot中如何自动转JSON输出
2022/06/16 Java/Android