如果URL中不存在http://如何?http://如果URL尚未包含協議(例如http://,https://或ftp://),我該如何添加?例:addhttp("google.com"); // http://google.comaddhttp("www.google.com"); // http://www.google.comaddhttp("google.com"); // http://google.comaddhttp("ftp://google.com"); // ftp://google.comaddhttp("https://google.com"); // https://google.comaddhttp("http://google.com"); // http://google.comaddhttp("rubbish"); // http://rubbish
3 回答

LEATH
TA貢獻1936條經驗 獲得超7個贊
@nickf代碼的修改版本:
function addhttp($url) { if (!preg_match("~^(?:f|ht)tps?://~i", $url)) { $url = "http://" . $url; } return $url;}
認識到ftp://
,ftps://
,http://
和https://
在不區分大小寫的方式。

慕無忌1623718
TA貢獻1744條經驗 獲得超4個贊
只需檢查是否有協議(由“://”描述)并添加“http://”(如果沒有)。
if (false === strpos($url, '://')) { $url = 'http://' . $url;}
注意:這可能是一個簡單而直接的解決方案,但Jack使用的答案parse_url
幾乎同樣簡單且更加健壯。你應該使用那個。
- 3 回答
- 0 關注
- 1308 瀏覽
添加回答
舉報
0/150
提交
取消