如何在PHP

时间:2017-08-01 07:49:12

标签: php ascii

我在表单提交后修改了帖子值,如下所示:

$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

我不知道用户在注册他的名字

时需要在什么条件下输入这个字符

2 个答案:

答案 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);

php Replacing multiple spaces with a single space