Lia*_*iam 8 php regex preg-match
我正在编写一个PHP脚本,它接受来自用户的正则表达式模式,由preg_match()使用.如何检查模式是否有效?
根据文件,
如果发生错误,preg_match()返回FALSE.
问题是它也会发出警告.
处理此问题的一种方法是抑制错误消息的输出,捕获返回值,并在错误时输出错误error_get_last().
就像是
$old_error = error_reporting(0); // Turn off error reporting
$match = preg_match(......);
if ($match === false) 
 {
   $error = error_get_last();
   echo $error["message"];
 }
error_reporting($old_error);  // Set error reporting to old level
您可能不需要生产环境中的错误报告位 - 这取决于您的设置.
试试吧.
如果模式无效,preg_match()将返回FALSE.
返回值:preg_match()返回模式匹配的次数. 这将是0次(不匹配)或1次,因为preg_match()将在第一次匹配后停止搜索. 相反,preg_match_all()将一直持续到主题结束.如果发生错误,preg_match()返回FALSE.
| 归档时间: | 
 | 
| 查看次数: | 7200 次 | 
| 最近记录: |