写的微信回调接口出错了, 由于手里的调试工具(包括微信官方的开发者接口调试工具)不能把HTTP错误的详情dump出来,只会显示空白,所以打算在程序里加上try catch 捕获错误直接输出。重新测试,结果还是一片空白。找了半天,才发现太粗心,把catch的类名写错了……
错误代码:
try { //code } catch(Exception $e) { echo $e->getMessage(); }
因为用了命名空间,当前controller的namespace是 'appcontrollers', catch的异常类实际上是'appcontrollersException',这个类是不存在的,但是php并不会报错。
使用命名空间时,异常基类应该写成'Exception':
try { //code } catch(Exception $e) { echo $e->getMessage(); }
或者在文件起始声明:
<?php use Exception;
然后下文即可直接写成"Exception"。