空变量在php中定义

时间:2012-03-18 17:58:59

标签: php variables declaration

在使用 $ error 执行操作之前:

$error = NULL;

在某些剧本中看到:

$error = '';
$error = false;
$error = 0;
  • 哪种方法'更好'或者可能取决于我使用的情况 它?
  • 你的建议是什么?

4 个答案:

答案 0 :(得分:42)

取决于您的设计:

  • 如果出现错误,您是将其设置为对象吗?使用NULL
  • 如果出现错误,您是否将其设置为true?使用false
  • 如果出现错误,您是否将其设置为某种数字?使用0
  • 您是否将其设置为字符串来描述错误?使用''

表示错误的更好方法是throwing Exceptions,而不是设置变量并根据它确定错误。

答案 1 :(得分:3)

这个问题没有规范的答案。只要您始终使用其中一个信号量,就可以使用任何您想要的信号。因为PHP是松散类型的,所有这些值都是“假的”,可以在布尔比较中作为FALSE进行评估。

也就是说,空字符串与其他字符串之间存在更多差异,因此在这种情况下我会坚持使用NULLFALSE

答案 2 :(得分:1)

这取决于您需要使用$error的条件。使用NULL是我选择的主要是因为我更多地处理MySQL子句和所有!

答案 3 :(得分:1)

1

$v = NULL;

settype($v, 'string');
settype($v, 'int');
settype($v, 'float');
settype($v, 'bool');
settype($v, 'array');

var_dump($v);

2

$v = NULL;
var_dump( (string) $v);
var_dump( (int) $v);
var_dump( (float) $v);
var_dump( (bool) $v);
var_dump( (array) $v);