首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何避免isset()和empty()

如何避免isset()和empty()
EN

Stack Overflow用户
提问于 2009-12-25 12:55:19
回答 10查看 23.8K关注 0票数 99

我有几个较旧的应用程序,当在E_NOTICE错误级别上运行时,它们会抛出许多"xyz is undefined“和"undefined offset”消息,因为不会使用isset()和consorts显式检查变量的存在。

我正在考虑通过它们来使它们与E_NOTICE兼容,因为关于丢失变量或偏移量的通知可以是救命稻草,可能会有一些小的性能改进,而且总体上是更干净的方式。

然而,我不喜欢成百上千的isset() empty()array_key_exists()对我的代码造成的影响。它变得臃肿,可读性变差,没有任何价值或意义。

如何在不进行过多变量检查的情况下构建代码结构,同时又与E_NOTICE兼容?

EN

Stack Overflow用户

发布于 2009-12-25 19:52:00

软件并不是靠上帝的恩典神奇地运行的。如果你期望的东西丢失了,你需要正确地处理它。

如果您忽略它,您可能会在您的应用程序中创建安全漏洞。在访问未定义变量的静态语言中,这是不可能的。如果它是空的,它不会简单地编译或崩溃你的应用程序。

此外,这会使您的应用程序不可维护,并且当发生意想不到的事情时,您会发疯的。严格的语言是必须的,而PHP在很多方面都是错误的。如果你没有意识到这一点,它会让你成为一个糟糕的程序员。

票数 0
EN
查看全部 10 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1960509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档