【发布时间】:2010-09-21 07:21:49
【问题描述】:
我想要这样的东西
用户输入网站链接
如果链接,我需要检查链接 不以我想要的“http://”开头 将“http://”附加到链接。
我怎样才能在 PHP 中做到这一点?
【问题讨论】:
我想要这样的东西
用户输入网站链接
如果链接,我需要检查链接 不以我想要的“http://”开头 将“http://”附加到链接。
我怎样才能在 PHP 中做到这一点?
【问题讨论】:
if (stripos($url, 'http://') !== 0) {
$url = 'http://' . $url;
}
【讨论】:
我会建议对 tom 稍作改进
if (0 !== stripos($url, 'http://') && 0 !== stripos($url, 'https://')) { $url = 'http://' . $url; }
但是,这会弄乱使用其他协议(ftp:// svn:// gopher:// 等)的链接
【讨论】:
if (!preg_match("/^http:\/{2}/",$url)){
$url = 'http://' . $url;
}
【讨论】:
我会检查一些字母后跟一个冒号。根据 URI 规范,冒号用于将“模式”(http、ftp 等)与“模式特定部分”分开。这样,如果有人输入(例如)mailto 链接,这些链接就会得到正确处理。
【讨论】: