我有一个存储在数组中的字符串,最终使用php和PDO插入到SQL数据库中。当我查看数据库时,有一个= 20,它存储在我希望摆脱的字符串的末尾。
我的代码看起来像这样:
$name = trim($message_item[1]);
$name = addslashes($name);
$so_row = "INSERT into sales_order (name) VALUES('$name')";
$dbmrp->exec($so_row);
我认为trim()会删除任何额外的东西,但它似乎没有帮助。我可以使用preg_replace('/ \ s + /','',$ name)摆脱它,但后来我丢失了所有的空白,包括我想保留的中间空格。那么什么是= 20,我该如何摆脱它?
更多信息 - $ message_item是一个数组,它是通过爆炸从电子邮件中读取的字符串而创建的。
答案 0 :(得分:2)
您可以使用substr()
删除字符串末尾的“= 20”,如。
$name = substr($name, 0, -3);
答案 1 :(得分:0)
rtrim($mesage_item[1], '=20');
答案 2 :(得分:0)
$name = preg_replace('/=20$/', '', $name);
答案 3 :(得分:0)
修剪仅适用于字符串开头和结尾的空格。 你可以像Donovan所说的那样去掉所有3个最后的角色。
$name = substr($name, 0, -3);
或用空
替换所有= 20str_replace('=20', '', subject)
但我真的认为你应该弄清楚为什么你得到一个字符串,这个= 20。任何删除它的解决方案都只是一种解决方法。