PHP 将 parse_str 与 trim 或任何其他净化过滤器组合
PHP combine parse_str with trim or any other sanitize filter
我需要 trim 或在使用 parse_str
功能时清理文本。
我试过这个,但文本实际上不是 trimmed:
parse_str(trim($_REQUEST['data']), $v);
例如,我得到这些结果:
- 通过 " "
我得到 " "
而不是 ""
;
- 通过 " a "
我得到 " a "
而不是 "a"
.
试试这个:
parse_str($_REQUEST['data'], $v);
$v = array_map('trim', $v);
如果您想要 trim 查询字符串中每个元素的空格,首先使用 parse_str()
将您的查询字符串转换为数组,然后 trim()
该数组的每个结果元素.
编辑
根据您上面的评论之一,您可能正在寻找比 trim()
更全面的内容。如果是这种情况,您可以定义自己的 "sanitizing" 函数并将其与 array_map()
一起使用,而不是 "trim":
function sanitize($input)
{
return trim(str_replace(' ', '', $input));
}
parse_str($_REQUEST['data'], $v);
$v = array_map('sanitize', $v);
我需要 trim 或在使用 parse_str
功能时清理文本。
我试过这个,但文本实际上不是 trimmed:
parse_str(trim($_REQUEST['data']), $v);
例如,我得到这些结果:
- 通过 " "
我得到 " "
而不是 ""
;
- 通过 " a "
我得到 " a "
而不是 "a"
.
试试这个:
parse_str($_REQUEST['data'], $v);
$v = array_map('trim', $v);
如果您想要 trim 查询字符串中每个元素的空格,首先使用 parse_str()
将您的查询字符串转换为数组,然后 trim()
该数组的每个结果元素.
编辑
根据您上面的评论之一,您可能正在寻找比 trim()
更全面的内容。如果是这种情况,您可以定义自己的 "sanitizing" 函数并将其与 array_map()
一起使用,而不是 "trim":
function sanitize($input)
{
return trim(str_replace(' ', '', $input));
}
parse_str($_REQUEST['data'], $v);
$v = array_map('sanitize', $v);