【发布时间】:2011-04-06 21:52:59
【问题描述】:
我正在开发一个使用普通数据库方法而不是准备好的语句的数据库驱动站点。因此,当传递给表单操作 PHP 脚本时,我必须清理 POST 和 GET 变量。
定义了一个 sanitise 方法,该方法试图尽可能地清理用户输入,但我试图减少测试 POST 和 GET 变量是否存在的代码以及使用默认值定义变量的代码,如果它们不存在。
这是我想出的,但它给我和其他开发者留下了不好的印象,因为我们都觉得错误抑制运算符被滥用了:
$Page = sanitise(@$_GET["page"], "Unspecified");
$Timestamp = sanitise(@$_POST["time"], time());
请你给我一些关于这段代码的评论吗?我同意这并不理想,但它确实减少了很多代码,并且比我们拥有的更具可读性。
我试图在一行中实现以下目标:
- 测试变量是否存在。
- 如果存在,请清理输入并分配给变量。
- 如果不存在,则创建一个变量但使用默认值。
你怎么看?
这是我在此提出的问题的延续:
Passing unset variables to functions
【问题讨论】:
标签: php post error-handling get sanitization