二维数组上的 php 过滤器 API

标签 php validation

我有像 request?a[b]=2 这样的二维 GET 参数

我想使用 php 输入过滤器 API ( http://www.php.net/filter ) 但找不到合理的方法来处理输入 a[b]。

filter_has_var(INPUT_GET, 'a'); // true

但是

filter_has_var(INPUT_GET, 'a[b]'); // false

有没有办法指示此 API 使用 2-dim 输入参数?

谢谢你的帮助

杰罗姆

最佳答案

a[b] 不是变量名。您只能使用具有正确变量名称的 filter_has_var。无论是数组还是字符串,参数的变量名称都是 a

因此您必须首先检查 get 输入是否包含 a 参数,然后检查其内容。

$hasVar   = filter_has_var(INPUT_GET, 'a');
$hasArray = $hasVar && is_array($_GET['a']);

希望这对您有所帮助。

关于二维数组上的 php 过滤器 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6761372/

相关文章:

php - 我们可以对单个表的每个 tr 使用 form 吗?如何?

php - 在 PHP 函数/方法中返回的最佳实践

PHP 检查 .sql 转储文件中是否存在行

php - 检测请求是否来自不同域或子域的最佳方法

java - Grails 嵌套域 - 将所有错误添加到顶级域对象

ruby-on-rails - 如何创建/维护对 ActiveRecord 关联中特定对象的有效引用?

php - 如何从 PDO 故障 "Error!: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined"中获取更多信息?

php - 将数据从表复制到表: validate mysql query

php - 在线 PHP 语法检查器/验证器

python - Django-值错误: invalid literal for int() with base 10: 'Confirm email'