php框架中,try,catch不能用的问题

2018-06-30 16:40:12

最近再用laravel框架发现,try catch用了没有效果,不能捕获异常,

然后在think框架里也试了一下,发现竟然也不可以!


try{$i = 1/0;}catch(Exception $e) {echo "error";}


这可不符合try catch的个性啊!!


。。。。。

最后发现问题在Exception这个类上!

需要在前面加上 (反斜杠)才起作用

像这样


try{$i = 1/0;}catch(\Exception $e) {echo "error";}

发现不仅仅Exception这个类需要,在框架中所有的php自带类都需要加


不加的话,框架会在自己的类中寻找,显然是不行的!!


  • 2017-09-05 11:48:16

    Laravel 服务容器实例教程 —— 深入理解控制反转(IoC)和依赖注入(DI)

    容器,字面上理解就是装东西的东西。常见的变量、对象属性等都可以算是容器。一个容器能够装什么,全部取决于你对该容器的定义。当然,有这样一种容器,它存放的不是文本、数值,而是对象、对象的描述(类、接口)或者是提供对象的回调,通过这种容器,我们得以实现许多高级的功能,其中最常提到的,就是 “解耦” 、“依赖注入(DI)”。本文就从这里开始。

  • 2017-09-11 09:22:09

    nginx配置返回文本或json

     有些时候请求某些接口的时候需要返回指定的文本字符串或者json字符串,如果逻辑非常简单或者干脆是固定的字符串,那么可以使用nginx快速实现,这样就不用编写程序响应请求了,可以减少服务器资源占用并且响应性能非常快

  • 2017-09-11 11:30:09

    linux 获取经过N层Nginx转发的访问来源真实IP

    通常情况下我们使用request.getRemoteAddr()就可以获取到客户端ip,但是当我们使用了nginx作为反向代理后,由于在客户端和web服务器之间增加了中间层,因此web服务器无法直接拿到客户端的ip,通过$remote_addr变量拿到的将是反向代理服务器的ip地址。如果我们想要在web端获得用户的真实ip,就必须在nginx这里作一个赋值操作,如下: