Yii2:记一次尴尬的bug

  • 创建一个文章模块,写完添加动作之后,分配到视图,发现报错:

    Exception (Not Supported) ‘yii\base\NotSupportedException‘ with message ‘Message format ‘number‘ is only supported for integer values. You have to install PHP intl extension to use this feature.‘
    
    in D:\WAMP\Apache24\htdocs\yii\vendor\yiisoft\yii2\i18n\MessageFormatter.php:347
  • 去百度,去google都没有找到怎么解决,都说需要安装扩展

  • 觉得不靠谱,又重头一点一点过了遍代码,终于找到,想砍死自己有没有:

  • 所以,这个框架报错会影响判断,也是对自己一次警告,越是不注意的地方,越是会搞死你

原文地址:https://www.cnblogs.com/wxdblog/p/9033122.html

时间: 2024-11-10 15:13:52

Yii2:记一次尴尬的bug的相关文章

记用ajax的一个bug

遇到一个bug,IE8,只有第一次功能正确,后面都不生效.我看了一下,确实IE存在问题,调试发现根本不进入后台,于是我猜测是缓存的问题,于是加上cache:false,解决了问题. $.ajax( { url: "ParaSetting/OpenOrCloseParam", data: { Id: id }, cache:false, type: "get", success: function (data) { alert(data); if (data ===

记一次生产的bug

第一个在代码中使用 new SimpleDateFormat("EEEE")来判断周几.在本地测试过程中通过日志打印出来的周几 比如周日对应的是中文汉字"星期日",然后使用判断 if("星期日".equals(weekDay)){   } (其中weekDay是要使用的日期).在本地测试通过后就愉快的上线了. 这是一个发邮件的功能,我把生产上发邮件的时间定在了周六上午10点.到了周六,我就正好去了外地玩,也没有带笔记本.周六上午我就在玩的地方等邮

记一次诡异的bug调试——————关于JDK1.7和JDK1.8中HashSet的hash(key)算法的区别

现象: 测试提了一个bug,我完全复现不了,但是最吊诡的是在其他人的机器上都可以复现.起初以为是SVN合并后出现的冲突,后来经过对比法排查: step 1: 我本地开两个jetty,一个跑合并之前的版本,一个跑合并之后的版本,数据库.redis配置都一样的,结果一致,由此可以推测应该不是代码的问题. step 2: 我电脑和别人电脑同样的配置.连的一个数据库,同样的代码.同样的数据,得到了两个结果,我这里是正常的,而且除了我其它人都可以复现,我喵了狗.... 我还一度以为是灵异现象....o(╯

记一个很隐蔽的bug

今天,遇到了这样一个问题.这个问题成功的经历了第一轮测试.第二轮测试并成功发布带到线上. 背景 这次测试的内容是一个活动页面,需求的情景是从app内访问链接并进入到这个活动页面,伴随着自动登陆(不需要用户输入用户名和密码,对app的用户登录状态进行获取并进行自动登录). 问题 只有第一次访问活动页面时会返回50x,之后再进入活动页面都不会再返回50x,一切正常. 没能发现问题的原因 因为每天的测试工作要大量的切换hosts,所以很容易出现由于浏览器或app缓存所导致的问题.一般通过刷新.清理缓存

记一次神秘的BUG

int CheckConfig(APPCFG* cfg) { int i; char IndexFile[56]; for(i=0;i<cfg->webnum;i++) { printf("i=%d\n",i); memset(IndexFile,0,sizeof(IndexFile)); sprintf(IndexFile,"%s/%s",cfg->pwebs[i].webpath,cfg->pwebs[i].homepage); if(a

表与表的关系把RD搞乱了,记一个Procedure中的bug

就是6张表的关联查询,写了一个存储过程,使用4层for来处理 bug:最后一个for中,两张表的关联条件少了一个,结果数据多查了. 排查办法:使用dbms_output.printline('');每一个for中加一个 dbms_output.put_line('-3.'||x.name);//把与下层for关联的关键信息打印出来dbms_output.put_line('-2.'||x.name);//把与下层for关联的关键信息打印出来dbms_output.put_line('-1.'||

记一次erlang语言bug导致rabbitmq的队列没有消费者的问题

公司开发和测试环境采用的erlang版本是19.0.3,rabbitmq版本为3.6.10.集群条件下稳定使用了近一年时间,没什么问题. 为了保持和线下一致,线上生产环境采用了相同的版本,运行几个月后,出现问题.现象如下: 在几天时间内,有三个队列出现没有消费者的问题.查看rabbitmq的日志. operation queue.declare caused a channel exception not_found: failed to perform operation on queue '

记一个 Base64 有关的 Bug

本文原计划写两部分内容,第一是记录最近遇到的与 Base64 有关的 Bug,第二是 Base64 编码的原理详解.结果写了一半发现,诶?不复杂的一个事儿怎么也要讲这么长?不利于阅读和理解啊(其实是今天有点懒想去休闲娱乐会儿),所以 Base64 编码的原理详解的部分将在下一篇带来,敬请关注. 0x01 遇到的现象 A 向 B 提供了一个接口,约定接口参数 Base64 编码后传递. 但 A 对 B 传递的参数进行 Base64 解码时报错了: Illegal base64 character

记一次特别的bug

问题现象 push入某个特定的画页,然后再pop出来,然后再切换不同的tabbaritem就会崩溃,而且没有任何提示,也没法定位崩溃位置,哪怕用了$arg1. 猜测,这种情况坏访问的可能性比较大,至少本来在实际 开发中还没有出过这种情况,一般都会记得比如block.notificationcenter .代理之类的处理. 操作 开启僵尸对象跟踪 好的,现在已经能定位到画页的方法了. responseForSelector: 于是,打了个方法断点.奇怪,没有定到位.后面,想了想这个方法,很明显是用