【发布时间】:2023-03-09 03:46:01
【问题描述】:
这个问题与我在 PHP 方面的经验特别相关,但没有理由不适用于其他语言。
在测试过程中设置了ERROR_REPORTING(E_ALL);,我注意到我有一些通知,例如Notice: Undefined offset: 0 in ChrisW/public_html/admin.php on line 122。这是因为我将有关表单的警告(未填充的值、无效值等)存储在数组中,然后访问它们:
echo $errorsArray[0] . '<label for="name" id="name-label">Your Name</label>
<input id="name" name="name" value="' . $name . '" />';
在我的验证函数中,我的错误数组是$errorsArray = array($nameError, $emailError);。第一次加载页面时,我显示表单:
if(count($_POST) == 0)
{
$name="";
$email="";
$errorsArray = array();
form_display($name, $number, $errorsArray);
}
在理想世界中:
- 通知重要吗?
- 我应该通过
$errorsArray("","");来初始化数组,还是 - 我是否应该在引用数组时检查它是否为空(例如将
echo $errorsArray[0]更改为echo (count($errorsArray[0])==0 ? "" : $errorsArray[0])?
希望会有一个相当非黑即白的答案 - 我不想引起长时间的讨论!
【问题讨论】:
-
风格很少是黑色或白色。一个例外是当它在官方风格指南中被提及时......但即便如此它也会受到质疑。
标签: php coding-style