WordPress开发过程中,经常会遇到“Notice : Undefined variable”的警告信息,警告信息准确的指出了问题出现的文件和行数。这个警告出现的原因是在变量未定义之前使用了变量。看一下下面的代码。
$action = $_GET['action'];
$output = $output . 'Output'
- 第一行代码中,如果get请求中没有action这个参数,
$action
变量没有定义 - 而第二行中,$output在连接字符串之前并没有定义。
在变量未定义之前使用,就会出现Undefined variable
的警告信息。
知道了原因,问题就迎刃而解了,有几种方法可以解决这个问题。
方法一:
在使用变量之前初始化一下变量,这是最正确的解决方案,对于上面出错的代码,按下面的方式写就可以了。
$action = ( $_GET['action'] ) ? $_GET['action'] : '';
$output = '';
$output = $output . 'Output'
方法二:
在变量前加上 @ 符号,在PHP中,变量名前面的@符号的作用是隐藏变量中出现的错误信息,不建议使用这种方法,因为变量可能会出现其他错误信息,如果隐藏了,除了问题,就不容易发现问题在哪里。
方法三:
修改 php.ini , 不现实警告,同样不推荐这种方法,警告信息的作用是提示我们程序中可能出现的问题,给我们提供解决问题的依据 ,如果隐藏了,可能存在的问题就会被直接忽略掉。因为不推荐这种方法,具体的修改变法就不在这里说了。出现问题的时候,直接按照第一种办法解决就可以了。