php中,用try/catch捕获了异常,为什么还会有警告?有没有办法去掉呢?

代码:try{preg_match_all($pattern,$string,$all);}catch(Exception$ex){echo$ex->getTraceAs... 代码:
try
{
preg_match_all($pattern,$string,$all);
}
catch (Exception $ex)
{
echo $ex->getTraceAsString();
}

错误提示:
Warning: preg_match_all() [function.preg-match-all]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for '8.0/no DST' instead in F:\php\doom\newfile.php on line 52

Warning: preg_match_all() [function.preg-match-all]: Empty regular expression in F:\php\doom\newfile.php on line 52
能否说明下“@抑制错误”的具体语法呢
展开
 我来答
充电草莓
2010-08-27 · TA获得超过352个赞
知道小有建树答主
回答量:205
采纳率:0%
帮助的人:101万
展开全部
因为它既抛出异常又触发错误, 你需要@抑制错误, try并不负责屏蔽错误触发, 只负责接收抛出的异常
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
0918zhongshan
2016-06-28 · TA获得超过120个赞
知道小有建树答主
回答量:114
采纳率:0%
帮助的人:58万
展开全部
php 不提供内置抛出异常,如果用try catch 必须自定义异常,并且手动throws才可以!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sssslpw
推荐于2018-05-10 · TA获得超过1014个赞
知道小有建树答主
回答量:579
采纳率:0%
帮助的人:409万
展开全部
试试把error_reporting(0);这句放在php文件的开头
至于@
则是在函数前加 如
while ($row = @mysql_fetch_assoc($qrt))
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dongjian7086
2010-08-27 · 超过55用户采纳过TA的回答
知道小有建树答主
回答量:208
采纳率:0%
帮助的人:158万
展开全部
我也想来看看结果到底是咋样的。来学习了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式