阅读Google Developers PHP 性能提示时,我发现不建议额外复制一个变量。
而不是这个:
$description = strip_tags($_POST['description']);
echo $description;
它建议这样做:
echo strip_tags($_POST['description']);
原因是可能不必要的内存消耗。
但是在进行一些搜索时,我看到了一些反驳说 PHP 实现了“写时复制”内存管理。这基本上意味着我们可以为任意数量的变量赋值,而不必担心实际复制的数据。
因此,我想知道是否在更复杂的情况下,例如$_POST
或$_GET
变量将在代码的许多地方使用,考虑到这些标准,使用或不使用额外变量是否是更好的做法:
1) 安全
2) 维护/可读性
3) 性能
编辑 1
我将使用下面的示例来更好地说明这个问题。
这种代码更好吗(考虑到上面的标准):
$user = anti_injection($_POST['user']);
$pass = anti_injection($_POST['pass']);
// Continue the code using $user and $pass
或这个?
$_POST['user'] = anti_injection($_POST['user']);
$_POST['pass'] = anti_injection($_POST['pass']);
// Continue the code using $_POST['user'] and $_POST['pass']