我使用 codeigniter,我对 View 的主要问题之一是可能存在也可能不存在的 undefined variable 。
我知道使用以下内容时很容易摆脱通知:
<?=html($this->input->post('name'))?>
通过添加 if(isset(..){ html($this->input->post('name')); }
但这很烦人,而且让代码看起来很难看,我也不想禁用通知报告。
对此有什么建议吗?
最佳答案
“最好”的方法?我仍然说它是isset
。明确地说出来是件好事,这将帮助我,作为稍后维护代码的人,认识到您可以接受该变量不存在,并且这不仅仅是一个错误。除非有 isset
检查,我假设您只是没有意识到它可能不被设置,并且想知道您实际上想要做什么。
此外,我断言它看起来丑陋的主要原因之一是因为所有代码都被塞进一行。您想要做两件事:检查它是否已设置,如果已设置则打印它。也许将它们分开看起来会更好,即使它有点冗长:
<?php if( isset($this->input->post('name')) ): ?>
<?= $this->input->post('name') ?>
<?php endif ?>
这也使得代码片段以后更容易管理,以防您以后决定将输出包装在 HTML 标记中,或者添加 else
情况。
另外,由于根据问题,我们不能弄乱错误报告设置,因此检查变量是否存在是唯一选项。对不起。您可以检查它是否已设置,或者禁用表示未设置的错误消息。没有中间道路。
关于php - 消除有关 undefined variable 的通知的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6558612/