PHP错误提示“Undefined variable”:变量未定义,如果你在php.ini设置中屏蔽了Notice这个等级的提示那么他就不会显示任何提示了,但是为了程序的严谨性考虑,我们尽量避免任何警告、错误等明显的程序缺陷。
例一:class.Chinese.php中以下代码就会出错“Undefined variable”:
for ( $i=0; $i<strlen($hexdata); $i+=2 ) $bindata.=chr(hexdec(substr($hexdata,$i,2)));
正确的写法应该是:
$bindata=''; for ( $i=0; $i<strlen($hexdata); $i+=2 ) $bindata.=chr(hexdec(substr($hexdata,$i,2)));
例二:以下代码也会出错“Undefined variable”:
$sl = "zh-CN"; $tl = "en"; function app_out($c,$gbk){ $data = app_get_translate($c,$sl,$tl); $out = str_replace($c,$data,$c); return app_js_out($out,$gbk); }
正确的写法应该是:
$sl = "zh-CN"; $tl = "en"; function app_out($c,$gbk){ global $sl,$tl; //将此函数体内的这两个变量定义为全局变量,以便使用开头设定的值 $data = app_get_translate($c,$sl,$tl); $out = str_replace($c,$data,$c); return app_js_out($out,$gbk); }