【发布时间】:2012-06-17 00:33:03
【问题描述】:
多年来,我一直在使用 PHP 编写个人脚本,并且习惯于关闭错误显示。我即将发布其中一些脚本,并希望以正确的方式进行。
我关闭错误显示的唯一原因是避免在使用之前测试每个 var,这要归功于 isset()。
所以,这是我的问题:
有没有比这更好的方法来声明多个变量?
<?php
// at the begining of my main file
if (!isset($foo)) ($foo = '');
if (!isset($bar)) ($bar = '');
if (!isset($ping)) ($ping = '');
if (!isset($pong)) ($pong = '');
// etc. for every single var
?>
例如这样的事情:
<?php
var $foo, $bar, $ping, $pong;
?>
【问题讨论】:
-
期望
var $foo是一个空字符串似乎很奇怪。您稍后会执行哪些操作导致出现问题? -
我不太明白这是什么意思。您在设置之前测试变量以检查是否可以设置它?您是否来自另一种语言,您必须设置像
dim d as Integer这样的变量?我认为你真正需要的是一些封装,比如函数、类等,这样你就可以脱离全局命名空间,然后养成在每个函数/类方法的头部声明变量的习惯。 -
@MikeB:一个简单的测试。如果 var 没有首先声明,一个简单的
if ($foo == 'blabla')会提示错误。 -
变量从哪里来?您是否使用
extract($_GET)之类的东西来创建变量,而您实际上并不知道创建了什么? -
这个错误说明了什么?这是警告吗?