【发布时间】:2012-07-29 21:09:51
【问题描述】:
考虑:
<?php
// $smith = "";
$submit ="button_a";
if($submit == "button_a") {
$smith = "button_a";
}
elseif($submit == "button_b"){
$smith = "button_b";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<p>
<?php echo($smith); ?>
</p>
</body>
</html>
PhpStorm 为每个文件提供一个标志:红色 - 错误,黄色 - 警告,绿色 - 正常。
标题上方的 PHP 代码将为 $smith 分配一个值。在正文中,我收到关于 $smith 的警告,说它可能未定义。如果我在 PHP 代码的顶部声明所有变量,($smith = "";) 它很高兴(没有警告)。
我应该做些什么来防止这些警告?
我不喜欢将评论附加到每个说不检查并且我不想将它们全部关闭的想法。
当我包含定义四个或五个变量的 db_login.php 文件时,这种情况经常发生。对于WAMP、MAMP 和真正的软管,我有不同的 db_login.php 文件。
有什么想法吗?
【问题讨论】:
-
我强烈建议您在任何使用之前始终声明/初始化变量...这样调试就容易多了。
-
... 并且不要使用全局变量进行设置(例如 db 详细信息等——静态类以获得帮助)——当然,如果它是你自己的代码 :)