如何在开始时删除空格或空行,我的网站上有用户可以写关于自己的描述的部分,但当你键入10倍空格按钮时,你可以将其保存在数据库中。。如何在开始或删除时保护键入空格?
示例:
with space
和
without space (this is good)
这是我现在的代码:
$sql = "UPDATE user SET description='".addslashes(str_replace("'r'n"," ",$_POST[description]))."'";
您可以这样做:
trim($_POST[description])
这正是trim()
的作用:
$description = trim($_POST['description']);
如果只需要左侧或右侧,请使用rtrim()
或ltrim()
。
http://php.net/manual/en/function.trim.php
字符串
trim ( string $str [, string $charlist ] )
此函数返回一个字符串,其中从str的开始和结束。如果没有第二个参数,trim()将去掉这些字符:
" " (ASCII 32 (0x20)), an ordinary space. "'t" (ASCII 9 (0x09)), a tab. "'n" (ASCII 10 (0x0A)), a new line (line feed). "'r" (ASCII 13 (0x0D)), a carriage return. "'0" (ASCII 0 (0x00)), the NUL-byte. "'x0B" (ASCII 11 (0x0B)), a vertical tab.
要从一开始就特别删除,请使用
ltrim()
它从左侧中删除空白
$string = ' a string!';
$string = ltrim($string);
echo $string; //outputs 'a string!';
也就是说,您实际上不应该将用户输入直接注入到数据库中。请查看参数化查询等。adslasms不是很好的安全性。
编辑:ltrim()从左边修剪,rtrim(()从右边修剪,trim()同时修剪两者。
您正在寻找TRIM。
如果您想从开头删除空格,可以使用函数ltrim。
$sql = "UPDATE user SET description='".addslashes (ltrim(str_replace("'r'n"," ",$_POST[description])))."'";
如果你想删除开头和结尾的空格,你可以使用函数trim。
$sql = "UPDATE user SET description='".addslashes (trim(str_replace("'r'n"," ",$_POST[description])))."'";