搜索
系统检测到您的用户名不符合规范:

关于TP5一个很恶心人的功能

浏览:13551 发布日期:2016年04月19日 分类:ThinkPHP5专区 关键字: thinkPHP5 ErrorException


首先说一下PHP的错误级别,通常情况下PHP程序只有在发生 E_ERROR 致命的错误时才会导致程序终止运行,而发生 E_WARNING 和 E_NOTICE 错误时是不会导致程序终止的,只是给出一些提示警告,程序会继续向下运行;例如我在某个地方用了一个未声明的变量(实际上PHP也不需要非得声明变量,直接用就行),程序会提示 Use undefined variable,然后继续向下运行并不会终止。可是TP5 就恶心了,E_WARNING 和 E_NOTICE 也被认为是系统错误而程序终止了,页面显示一堆的Debug信息,关键是设置了 error_reporting(0) 也关闭了 APP_DEBUG 还是这样,这个异常捕获不能关闭?
问题就来了,由于敲代码很随性已经习惯了,不用去管变量类型,不用声明变量就直接使用。但是现在TP5 程序的检查要求就是必须要先声明变量然后再使用,否则就系统异常直接跳出了;或者得每次使用变量之前都用 isset() 函数判断一下是否已经 defined,如果 undefined 就做一次声明。这也就算了,还可以容忍,大不了就是改改敲代码的习惯,思维更严谨一些。受不了的是,老版本的 TP 框架升级上来的项目根本就用不了了,到处都是 Use undefined variable 的系统错误提示,这种 ErrorException 又没法关闭,我只想说真的受不了了。本身升级就不容易,好不容易升级上来的又用不了只能弃用,不知道大家有没有遇到这个问题?
这个功能有没有什么配置信息能设置得灵活一点的?或者我想直接把这个关了在那关?
最佳答案
评论() 相关
后面还有条评论,
评论支持使用[code][/code]标签添加代码
您需要登录后才可以评论 登录 | 立即注册
收藏
Suckbiao
积分:842 等级:LV2
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /