我正在尝试从字符串末尾删除正斜杠。
似乎很简单,但我遇到了一些问题。一个非常奇怪的charactar出现在字符串的末尾。看我的代码:
function removeSlash($currentURL)
{
if ( strpos($currentURL , '/') == (strlen($currentURL)-1) )
$currentURL = substr( $currentURL, 0, -1 );
return $currentURL;
}
$url = 'http://bob.com/';
var_dump( removeSlash($url) );
输出:
string(15)"http://bob.com"
以上var_dump
表示返回了15个字符,但实际上有14个字符......
所以我忽略它。然后我再写一些代码将它存储在DB中。无形的角色出现了!
在phpMyAdmin中,当我编辑插入输出的行时,这就是显示的内容(在文本字段中):
不知道这是怎么回事。我尝试了str_replace()
,$var[15] = ''
和其他一些方法。一切都在做同样的事情!
答案 0 :(得分:2)
简单的情况是使用
rtrim($currentUrl, "/");
但根据评论,你可能会更幸运。
function removeSlash($currentURL)
{
return preg_replace('/[\x00-\x1F\x80-\xFF]/', '', rtrim($currentURL));
}
答案 1 :(得分:0)
你可以尝试:
$url = trim($url, '/');
你的问题非常奇怪,但这可能不是问题。