我在表单提交后修改了帖子值,如下所示:
$value=trim($_POST['submit_value']);
因此,如果我提交' some_value '
,那么它将变为'some_value'
PHP trim()到目前为止工作正常。
但是最近,提交了一个DEL(ASCII码127)字符,我不知道如何修剪它。
$asd=DEL(ASCII code 127) character;
// I cannot copy, because stackoverflow remove it.
// it looks like space but it's not. trim() doesn't work.
echo ord($asd); //return 127
任何想法?非常感谢!
顺便说一下,这是一种输入这个字符的方法:
Unicode Character 'DELETE' (U+007F)
How to type in Microsoft Windows
我不知道用户在注册他的名字
时需要在什么条件下输入这个字符答案 0 :(得分:0)
我假设您在此字段中只需要字母数字数据。你可以做一些像下面的代码。
trim(preg_replace('/[^da-z0-9A-Z]/i', '', $_POST['submit_value']));
答案 1 :(得分:0)
$string = preg_replace('/[\x00-\x1F\x7F-\xFF]/', '', $string);
它匹配范围0-31,127-255中的任何内容并将其删除。
答案来自: PHP: How to remove all non printable characters in a string?
BTW,可以用一个空格替换多个空格:$output = preg_replace('!\s+!', ' ', $input);