PHP怎么捕获不到异常啊?有没有验证正则表达式书写是否正确的方法啊? 本帖最后由 yifulou 于 2010-05-18 17:51:16 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你那里面有异常没,要是没异常的话你怎么也到不了catch里面啊, 那是当然的,无论正确与否都是返回(return),只是值不同而已 如果输入一个错误的正则,则会输出:2:eregi() [function.eregi]: REG_BADRPTFile:/home/web/util/input_check.phpLine:2031这个异常 我希望返回一个TRUE或者FALSE,而结果返回给我的是一个2:eregi() [function.eregi]: REG_BADRPTFile:/home/web/util/input_check.phpLine:2031这就有问题了吧… 语法不正确指的是比如你该转义的字符没转义造成正则解析器解析错误,或是由于引号等使用不当造成了php的解析错误。这些都可以被异常捕获到。 语法错误,也跳出异常了,就是捕获不到,你可以用我那个方法自己写个错误的正则试试,比如“abc *?+”这个 大概说下 如果你是想用这种方式测试 输入的正则是否正确 那个执行不是抛出异常而是抛出个 错误试试查看下 set_exception_handler 看看 我试了exception_handler,是会走进那个方法,错误代码是2,不过依然是跳出,而不是捕获啊,最多只能让他不输出而已,实在是没法用这种办法判断那个正则是否正确啊…求帮助…… 用PHP扩展解决了,谢谢各位了! apache php mysql的环境配置 送域名+送网页空间+送企业邮局/送SQL数据库 php查询数据总数问题 正则问题,会的请进谢谢 php 并发问题 php如何列出一部分字段信息? PHP如何复制文件夹下的某些目录 怎样取得这样网页文件的地址? 传递数组问题 气,散分过年 判断用户是否登录 php链接MSSQLSERVER数据库
如果输入一个错误的正则,则会输出:
2:eregi() [function.eregi]: REG_BADRPTFile:/home/web/util/input_check.phpLine:2031
这个异常
我希望返回一个TRUE或者FALSE,而结果返回给我的是一个2:eregi() [function.eregi]: REG_BADRPTFile:/home/web/util/input_check.phpLine:2031这就有问题了吧…
语法错误,也跳出异常了,就是捕获不到,你可以用我那个方法自己写个错误的正则试试,比如“abc *?+”这个