-3

换句话说,说我有

$existingVariable = 'This is set';
echo thisFunction($existingVariable, $nonExistingVariable);

//included file
function thisFunction($existingVariable){
  echo $existingVariable;
}

$nonExistingVariable 不再存在,因为包含的文件已更改。

所以我理解它的方式$nonExistingVariable是 =''NULL,对吧?这对我的代码有任何实际影响吗?我会在发布之前将它们删除(或将它们添加回包含的文件),但我只是好奇是否将不存在的变量作为参数存在功能问题的风险。

4

2 回答 2

0

它不会影响代码的功能,除非您使用func_get_args();参数而不是仅指定它们(您正在指定它们,所以它不会有任何影响)

你可以做的IE:

function test() {

$args = func_get_args();

$b = $args[0];
$c = $args[1];
echo "$b\n$c";
}
test('dog','cat');
outputs: 
dog
cat

但它会影响代码的可读性和用户友好性,因为您可能会尝试从旧代码区域复制和粘贴函数调用,并在试图弄清楚为什么变量没有被传递到时陷入困境函数(因为它不再是参数)。

如果它不再被使用,为什么不直接删除它?

于 2013-03-03T08:56:22.217 回答
0

如果变量不存在,那么是的 PHP 会给你一个错误。“未定义的变量”。您可以分配一个 NULL 值,$nonExistingVariable= NULL; 或者你可以做

if (!empty($nonExistingVariable))

为了防止错误

于 2013-03-03T08:57:23.847 回答