我有以下代码:
<div><strong>Name: </strong><?php echo anchor('http://'.$link, $row->Name); ?></div>
Run Code Online (Sandbox Code Playgroud)
用户输入链接($ link)并将url放入锚标记.但是,它不会重定向到外部链接,而只是修改具有存储URL的站点的基本URL.我尝试将"http://"添加到提交的链接的开头,除非用户已经在链接输入中提供了http,否则它将起作用.关于如何克服这个问题的任何建议都是惊人的.
是的,根据文档,anchor()根据您网站的网址创建链接.
如果URL的前缀是按预期工作http://,但是您有时会添加用户http://而有时无法添加,您只需检查链接以确定它是否正常,或者是否需要添加前缀.这是一个基本的例子strpos:
if(strpos($link, 'http') === FALSE){
// link needs a prefix...
$link = 'http://' . link;
} else {
// link is ok!
}
Run Code Online (Sandbox Code Playgroud)
...使用CodeIgniter的prep_url()功能(感谢@cchana提醒我!):
如果URL中缺少方案,此函数将添加http://.将URL字符串传递给函数,如下所示:
Run Code Online (Sandbox Code Playgroud)$url = "example.com"; $url = prep_url($url);
| 归档时间: |
|
| 查看次数: |
4406 次 |
| 最近记录: |