在编写最近的应用程序时,我在声明之前意外地开始填充数组。
error_reporting ( E_ALL);
$array['value'] = 'Test string';
我使用E_ALL错误报告并且未抛出错误。它是否正确?如果是这样,在声明数组值而从未声明实际数组时是否存在任何问题? 也许它只是没有遵循良好的编程标准。
答案 0 :(得分:6)
在编写最近的应用程序时我 不小心开始填充数组 在我宣布它之前。
PHP是一种弱类型语言。你的陈述:
$array['value'] = 'Test string';
是关联数组的隐式声明(通过赋值)。因此,不会生成通知。
但是,如果你要写:
echo $array['value'];
在分配之前,您会收到Undefined variable
通知。
答案 1 :(得分:4)
不,你没必要
是的,声明数组以增加代码可重复性是一个好习惯
答案 2 :(得分:3)
为了扩展它,不是你没有“拥有”,但它可能是有益的。
此外,如果您关闭了E_NOTICES,那么您将看不到非未初始化变量的错误。在生产时你应该关闭它,但在开发时你应该打开它。它可以让你找到你可能看不到的问题。