我为安全链接编写了一个返回字符串的函数。该函数名为safe_link( string ),但我遇到了char替换问题。我不知道为什么str_replace()不起作用,这就是我编写自己的函数的原因。我需要保存有效的网址,我需要从表单中提供的字符串中删除 http:// , www。。
function safe_link($arg){
$url = str_split($arg);
$string = array();
$max = 0;
if($url[0] == "h" && $url[7] == "w") # http://www.
$max = 11;
elseif($url[0] == "h") # http://
$max = 7;
elseif($url[0] == "w") # www.
$max = 4;
str_replace("/", "", $url);
for($i = $max, $n = 0; $i < sizeof($url); $i++, $n++){
$string[$n] = $url[$i];
}
return implode("", $string);
}
该功能正在运行,但是如果一个人在URL的末尾写了“/”(斜杠)怎么办?我需要从该字符串中删除,但我不知道该怎么做。 str_replace()不起作用。我试图调试,我看到数组$url[sizeof($url) - 1]
返回两个字符而不是一个字符。但为什么呢?
谢谢!
答案 0 :(得分:0)
这个功能怎么样:
function safe_link($url) {
$url = str_replace('http://', '', $url);
$url = str_replace('www.', '', $url);
$url = str_replace('/', '', $url);
return trim($url);
}
这是你期望的吗?