今天实现文章锚文本,使用preg_replace数组替换字符串的时候发生了一下情况
$content = preg_replace(‘/netpc(括号)/’,’abc’,’测试netpc(括号)文本’);
$content返回值为Null,也并没有告诉你错误原因和位置。
最后测试得出,preg_replace在替换字符串中包括了 ()全角和半角括号同时存在的时候会出错
使用addcslashes转义还不行,查询文档最后发现用quotemeta转义元字符集后替换就正常了。
函数说明:https://www.php.net/manual/zh/function.quotemeta.php
返回 在下面这些特殊字符前加 反斜线(\) 转义后的字符串。 这些特殊字符包含:
. \ + * ? [ ^ ] ( $ )
-
归档
- 2025年7月
- 2025年6月
- 2024年9月
- 2024年5月
- 2024年3月
- 2023年12月
- 2023年10月
- 2023年9月
- 2023年8月
- 2023年6月
- 2023年5月
- 2023年4月
- 2023年3月
- 2023年2月
- 2023年1月
- 2022年12月
- 2022年10月
- 2022年6月
- 2022年5月
- 2022年4月
- 2021年12月
- 2021年11月
- 2021年10月
- 2021年8月
- 2021年6月
- 2021年4月
- 2021年3月
- 2021年2月
- 2021年1月
- 2020年10月
- 2020年9月
- 2020年8月
- 2020年7月
- 2020年6月
- 2020年5月
- 2020年4月
- 2020年3月
- 2019年9月
- 2019年8月
- 2019年7月
- 2019年6月
- 2019年5月
- 2019年4月
- 2019年3月
- 2019年2月
- 2019年1月
- 2018年12月
- 2018年11月
- 2018年9月
- 2018年8月
- 2018年7月
- 2018年6月
- 2018年5月
- 2018年4月
- 2018年1月
- 2017年12月
- 2017年11月
- 2017年10月
- 2017年8月
- 2017年7月
- 2017年6月
- 2017年5月
- 2017年4月
- 2017年3月
- 2017年2月
- 2017年1月
- 2016年12月
- 2016年11月
- 2016年10月
- 2016年9月
- 2016年8月
- 2016年7月
- 2016年6月
- 2016年5月
- 2016年4月
- 2016年3月
- 2016年2月
- 2016年1月
- 2015年12月
- 2015年11月
- 2015年10月
- 2015年9月
- 2015年8月
- 2015年7月
- 2015年6月
- 2015年5月
- 2015年4月
- 2015年3月
- 2015年1月
- 2014年12月
- 2014年11月
- 2014年10月
- 2014年9月
- 2014年8月
- 2014年7月
- 2014年6月
- 2014年5月
- 2014年4月
- 2014年3月
- 2014年2月
- 2014年1月
- 2013年12月
- 2013年11月
- 2013年10月
- 2013年9月
- 2013年8月
- 2013年7月
- 2013年6月
- 2012年12月
- 2012年7月
- 2012年6月
- 2012年5月
- 2012年4月
- 2012年2月
- 2011年9月
- 2011年8月
- 2011年7月
- 2011年6月
- 2011年5月
- 2011年4月
- 2011年3月
- 2011年2月
- 2011年1月
- 2010年12月
-
杂项