ECSHOP如何解决Deprecated: preg_replace()报错
2016-07-21 12:00
411 查看
类似这样的报错:
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead inD:\wyh\ecshop\includes\cls_template.php on line 300
1、错误原因:
preg_replace() 函数中用到的修饰符 /e 在 PHP5.5.x 中已经被弃用了。
如果你的PHP版本恰好是PHP5.5.X,那你的ECSHOP肯定就会报类似这样的错误。
2、解决办法:
一、将 cls_template.php的300行
换成:
二、将cls_template.php的493行
换成:
三、将cls_template.php的552行
换成:
四、将cls_template.php的1069行
换成:
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead inD:\wyh\ecshop\includes\cls_template.php on line 300
1、错误原因:
preg_replace() 函数中用到的修饰符 /e 在 PHP5.5.x 中已经被弃用了。
如果你的PHP版本恰好是PHP5.5.X,那你的ECSHOP肯定就会报类似这样的错误。
2、解决办法:
一、将 cls_template.php的300行
return preg_replace( "/{([^\}\{\n]*)}/e" , "\$this->select('\\1');" , $source ); |
return preg_replace_callback( "/{([^\}\{\n]*)}/" , function ( $r ) { return $this ->select( $r [1]); }, $source ); |
$out = "<?php \n" . '$k = ' . preg_replace( "/(\'\\$[^,]+)/e" , "stripslashes(trim('\\1','\''));" , var_export( $t , true)) . ";\n" ; |
$out = <?php \n " . '$k = ' . preg_replace_callback(" /(\ '\\$[^,]+)/" , function($r) {return stripslashes(trim($r[1],' \ '' ));}, var_export( $t , true)) . ";\n"; |
$val = preg_replace( "/\[([^\[\]]*)\]/eis" , "'.'.str_replace('$','\$','\\1')" , $val ); |
$val = preg_replace_callback( "/\[([^\[\]]*)\]/" , function ( $r ) { return '.' . str_replace ( '$' , '$' , $r [1]);}, $val ); |
$pattern = '/<!--\s#BeginLibraryItem\s\"\/(.*?)\"\s-->.*?<!--\s#EndLibraryItem\s-->/se' ; |
$replacement = "'{include file='.strtolower('\\1'). '}'" ; |
$source = preg_replace( $pattern , $replacement , $source ); |
$pattern = '/<!--\s#BeginLibraryItem\s\"\/(.*?)\"\s-->.*?<!--\s#EndLibraryItem\s-->/s' ; |
$source = preg_replace_callback( $pattern , function ( $r ){ return '{include file=' . strtolower ( $r [1]). '}' ;}, $source ); |
相关文章推荐
- Linux进程状态解析 之 R、S、D、T、Z、X (主要有三个状态)
- 多种方式(含docker容器)实现零停机时间(Zero-Downtime)部署
- 伪静态URLRewrite学习笔记
- Linux 输入密码无法登陆
- linux等待队列wait_queue_head_t和wait_queue_t
- Linux下安装配置使用 Keepalived
- nginx 正向代理配置文件示例
- Linux常用命令之sed
- linux-3.0内核移植
- 【Openfire】验证用户输入密码是否正确
- vlc 详细使用方法:libvlc_media_add_option 函数中的参数设置
- Linux 下安装 jdk-7u75-linux-x64.gz,jdk1.7.0_75,jdk1.7步骤:
- CentOS7下安装Chrome
- Linux 使用root用户FTP上传
- Don't know how to define struct flock on this system, set --enable-opcache=no
- Linux系统编程--文件(三)
- 深入理解docker graph driver - DeviceMapper
- openstack安装配置(二)
- Linux内存管理原理 与文件读写 图 相当详细
- habse的CopyTable