出现"Undefined index: xxx"警告的原因:PHP 本身不需要事先声明变量即可直接使用,但是对未声明变量会有提示。另外如下的情况也会有该警告提示:
_GET('data'),如果表单中没有data表项,则会警告。$field_val = $data['field'],如果data中没有field字段,则会警告。
因此,最好的办法是使用变量之前先检查变量是否存在,如:
if (isset($_GET['name'])&&!empty($_GET['name'])){
$name = $_GET['name'];
}
另外,还有其他几种解决方法供参考:
1、 修改 php.ini 文件中
error_reporting = E_ALL
为
error_reporting = E_ALL & ~E_NOTICE # 除去Notice警告
2、使用代码
ini_set( 'error_reporting', E_ALL ^ E_NOTICE );
ini_set( 'display_errors', '0' );
3、使用@抑制错误
@$name = $_GET['name'];