【发布时间】:2011-08-04 08:23:01
【问题描述】:
我遇到的问题是删除空格。 我尝试了几种不同的方法,但都没有删除它们。 我有一个下拉菜单,其中包含空格,以便客户可以轻松理解所有时间。它就像下面的 $str 一样。主要问题是,一旦将其发送到 mysql 数据库,它就会用带重音符号的 A 替换多余的空格。另一个问题是,它最终看起来不正确,有额外的空间供客户在提交前查看。我不清楚 mysql_prep 的功能,但在数据库上运行查询之前它也有修剪。
我试过了:
$str = " 9:00 AM to 11:00 AM"
$time = str_replace(' ', '', $str);
echo $time; // OUTPUTS " 9:00AM to 11:00AM" // THOSE SPACES DONT NEED TO BE REMOVED
$str = " 9:00 AM to 11:00 AM"
$time = str_replace(' ', '', $str); //NOTE THE EXTRA SPACE
echo $time; // OUTPUTS " 9:00 AM to 11:00 AM"
$str = " 9:00 AM to 11:00 AM"
$time = str_replace(' ', '', $str); //EVEN TRIED THIS EVEN THOUGH THERES NO WAY
echo $time; // OUTPUTS " 9:00 AM to 11:00 AM"
和
$str = " 9:00 AM to 11:00 AM"
$time = preg_replace('/\s+/', '', $str);
echo $time; // OUTPUTS "???9:00 AM??to??11:00 AM"//SEEMS CLOSEST BUT THE TRIANGLE QUESTION MARKS REPLACE THE SPACES
$str = " 9:00 AM to 11:00 AM"
$time = preg_replace('/\s\s+/', ' ', $str);
echo $time; // OUTPUTS " 9:00 AM to 11:00 AM"
我什至尝试使用explode 和trim 以一种圆形的方式进行操作,甚至trim 也没有删除空格。我正在使用的版本; PHP:5.3.4, MySQL:5.1.53 & Firefox:5.0.1
【问题讨论】:
-
您的第一个
preg_replace示例适用于我:codepad.org/tOfpVswD -
trim()或其兄弟rtrim()或其姐妹ltrim()又出了什么问题? -
得到一个 Â在您的文本中表示您的字符集不匹配。一个地方可能是 UTF-8,另一个地方是 ISO-8859。
-
@Shi:OP 也希望删除内部空间。
-
为什么你的问题的标题是
Removing  ,但你的例子都没有对包含 的字符串进行操作?
标签: php mysql removing-whitespace