请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

ERRMAP关联数组无法获得值

求救!帮我看看这个奇怪的现象:


因为一直返回errmsg和errno为null,经过10个小时层层排查,最终定位到ERRMAP(累!)。于是我做了以下几项修改,将问题表现和定位出来:

步骤一:library/Err/Map.php 尝试直接返回数组(因为无法进入到if(isset(ERRMAP[$code])){}条件内,所以注释掉判断。)

https://img1.sycdn.imooc.com/szimg//59a8594f0001a55806760543.jpg



步骤二:在controllers/User.php的registerAction()内直接echo json给postman以查看ERRMAP::get()返回的内容

https://img1.sycdn.imooc.com/szimg//59a85a6f0001cac005960436.jpg




步骤三:postman请求register后的显示errno已经传入,但是errmsg的值无法获取

https://img1.sycdn.imooc.com/szimg//59a85b5500017ba111250463.jpg


环境:MAMP4.2: APACHE PHP7.0.20 MySQL5.6.35 + yaf3.0.5



正在回答

3回答

同学,我想给你置顶!真棒~

0 回复 有任何疑惑可以回复我~
  • 提问者 约翰姜 #1
    受到老师表扬,深感荣幸!
    回复 有任何疑惑可以回复我~ 2017-09-03 15:02:02
  • 提问者 约翰姜 #2
    非常感谢!
    回复 有任何疑惑可以回复我~ 2017-09-08 12:31:13
提问者 约翰姜 2017-09-03 15:45:37

已解决:

  1. application/library/Err/Map.php中的代码应该改为 :

https://img1.sycdn.imooc.com/szimg//59abbd03000153bf06550544.jpg

就是在ERRMAP[$code]加self::




2. application/models/User.php中用到list()的地方改为:

https://img1.sycdn.imooc.com/szimg//59abbdd600016d5408770260.jpg

list()函数只用于数字索引的数组,且假定数字索引从 0 开始。

( 参考来源:http://www.w3school.com.cn/php/func_array_list.asp   )





1 回复 有任何疑惑可以回复我~
hong泓零食店 2017-09-21 15:02:43

list()问题 不知道有没有最优方案

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
高性能的PHP API接口开发
  • 参与学习       1044    人
  • 解答问题       149    个

掌握核心API接口开发及性能调优,让你的代码运行效率加倍

了解课程
意见反馈 帮助中心 APP下载
官方微信