PHP正则的Unknown Modifier错误解决方法_php技巧

如下正则:

$a='2<span><nobr>tóng<span class="h">dòng</span></nobr><br>垌</span>3';
echo preg_replace('/<span class="h">[^<]*?</span>/','',$a);

会提示:

Warning: preg_replace(): Unknown modifier 'p' in E:\phpLearn\test.php on line 12

原因是:

在正则模式中,用/做定界符,但正则中也含有/,因此会出现此错误,PHP误当后面的一个</span>中的斜杠是结束的定界符。

解决办法:

1、加一个转义符:

echo preg_replace('/<span class="h">[^<]*?<\/span>/','',$a);

2、改其它定界符:如

echo preg_replace('{<span class="h">[^<]*?</span>}','',$a);
时间: 2024-10-07 20:20:51

PHP正则的Unknown Modifier错误解决方法_php技巧的相关文章

PHP正则的Unknown Modifier错误解决办法

如下正则: $a='2<span><nobr>tóng<span class="h">dòng</span></nobr><br>垌</span>3'; echo preg_replace('/<span class="h">[^<]*?</span>/','',$a); 会提示: Warning: preg_replace(): Unknown mod

PhpMyAdmin出现export.php Missing parameter: what /export_type错误解决方法_php技巧

PhpMyAdmin 不能导出数据的问题,点击导出后先是一个请求失败或者白页,重新刷新后就报错 export.php: Missing parameter: what (FAQ 2.8) export.php: Missing parameter: export_type (FAQ 2.8) 解决方法是: php目录下的php.ini 设置要调整一下 原来的 post_max_size = 8M ,改大到 post_max_size = 20M 就好了. php源码中解决办法 ini_set('

Cannot modify header information错误解决方法_php技巧

<?php ob_start(); setcookie("username","宋岩宾",time()+3600); echo "the username is:".$HTTP_COOKIE_VARS["username"]."\n"; echo "the username is:".$_COOKIE["username"]."\n"; pr

php session_start()关于Cannot send session cache limiter - headers already sent错误解决方法_php技巧

说是已经有输出,用编辑器打,前面明明什么都没有,原来在使用AJAX的 时候,也出现过这种情况,后来,把这个PHP文件放到linux中打开,会发现,在文件的最前面,会出现"锘 "这样的一个字符(引号内),把它去掉以后,再运行,OK,运行正常.后来在网上搜索一些文件,给的解释是:UTF8文件的BOM(Byte Order Mark)标志,在保存的时候会自动存入! 不管它是干嘛的,现在的目的就是把它去掉,我总结的方法有下面三种: 1. 在Linux下打开,去掉后再保存 2. 用写字板打开,把

php连接Access数据库错误及解决方法_php技巧

php+access连接数据库常用的方式一般有两种. 推荐的代码 需要注意php获取路径用的是realpath 复制代码 代码如下: <?php $connstr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("data.mdb"); $connid=odbc_connect($connstr,"","",SQL_CUR_USE_ODBC); $i

php提示Failed to write session data错误的解决方法_php技巧

本文较为详细的分析了php提示Failed to write session data错误的解决方法.分享给大家供大家参考.具体方法如下: 一.问题: 提示信息:Warning: Failed to write session data (files).Please verify that the current setting of session.save_path is correct () in Unknown on line 0 二.解决方法: 代码如下: 复制代码 代码如下: ses

WordPress中&quot;无法将上传的文件移动至&quot;错误的解决方法_php技巧

今天在网页上传图片到博客,结果提示:"无法将上传的文件移动至 /home/wwwroot/wp-content/uploads/2013/",郁闷了,认为是权限问题,修改了文件,都改成了777的权限,但是还是不可以写入,图片无法上传. 索性,我查看了我的网站根目录文件夹的权限,显示是www ,www  ,而用ps aux|grep nginx 显示的是nobody 的身份运行nginx的子程序,ps aux|grep php-fpm,显示的也是nobody.同时发现,我网站里的其他的文

PHP has encountered an Access Violation 错误的解决方法_php技巧

搭建wordpress的时候发觉居然会报这种错误,网上的解决方案都是千篇一律的复制粘贴,都是关于eaccelerator的设置问题,我很奇怪我并没有安装这个扩展啊?不过倒是安装过APC扩展,两种扩展都是优化服务器做底层代码支持,实现缓存共享.将APC关闭就不报错了. 一般是因为eaccelerator的问题解决方法如下:php for windows的bug 参考: 第一种可能: 去掉 php中 eaccelerator 的扩展 这样做能够解决您的问题,不过可能会加重系统负担 因为eaccele

PHP错误Warning:mysql_query()解决方法_php技巧

php提示错误:Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO)代码: <?php class mysqlClass { function mysqlClass($host='localhost',$user='root',$pw='',$db='mysql') { $this->link=mysql_connect($hos