CIURL辅助函数
该辅助函数通过下面的代码加载:
$this->load->helper("url");
该辅助函数有下列可用函数:
1. site_url([$uri = ""[, $protocol = NULL]])
- $uri (string) -- URI string
- $protocol (string) -- Protocol, e.g. "http" or "https"
Site URL
string
根据配置文件返回你的站点 URL 。index.php (获取其他你在配置文件中设置的 index_page 参数) 将会包含在你的 URL 中,另外再加上你传给函数的 URI 参数,以及配置文件中设置的 url_suffix 参数。
推荐在任何时候都使用这种方法来生成你的 URL ,这样在你的 URL 变动时你的代码将具有可移植性。
传给函数的 URI 段参数可以是一个字符串,也可以是个数组,下面是字符串的例子:
echo site_url("news/local/123");
上例将返回类似于:http://example.com/index.php/news/local/123
下面是使用数组的例子:
$segments = array("news","local","123");echo site_url($segments);
2. base_url($uri = "", $protocol = NULL)
- $uri (string) -- URI string
- $protocol (string) -- Protocol, e.g. "http" or "https"
Base URL
string
根据配置文件返回你站点的根 URL ,例如:
echo base_url();
该函数和 site_url() 函数相同,只是不会在 URL 的后面加上 index_page 或 url_suffix 。
另外,和 site_url() 一样的是,你也可以使用字符串或数组格式的 URI 段。下面是字符串的例子:
echo base_url("blog/post/123");
上例将返回类似于:http://example.com/blog/post/123
跟 site_url() 函数不一样的是,你可以指定一个文件路径(例如图片或样式文件),这将很有用,例如:
echo base_url("images/icons/edit.png");
将返回类似于:http://example.com/images/icons/edit.png
该函数是 CI_Config::base_url() 的别名,更多信息请查阅 配置类 文档。
3. current_url()
The current URL
string
返回当前正在浏览的页面的完整 URL (包括分段)。
注解
该函数和调用下面的代码效果是一样的: | | site_url(uri_string());
4. uri_string()
An URI string
string
返回包含该函数的页面的 URI 分段。例如,如果你的 URL 是:
http://some-site.com/blog/comments/123
函数将返回:
blog/comments/123
5. index_page()
"index_page" value
mixed
返回你在配置文件中配置的 index_page 参数,例如:
echo index_page();
6. anchor($uri = "", $title = "", $attributes = "")
- $uri (string) -- URI string
- $title (string) -- Anchor title
- $attributes (mixed) -- HTML attributes
HTML hyperlink (anchor tag)
string
根据你提供的 URL 生成一个标准的 HTML 链接。
第一个参数可以包含任何你想添加到 URL 上的段,和上面的 site_url() 函数一样,URL 的段可以是字符串或数组。
注解
如果你创建的链接是指向你自己的应用程序,那么不用包含根 URL (http://...)。 这个会根据你的配置文件自动添加到 URL 前面。所以你只需指定要添加的 URL 段就可以了。
第二个参数是链接的文本,如果留空,将使用链接本身作为文本。
第三个参数为你希望添加到链接的属性,可以是一个字符串,也可以是个关联数组。
这里是一些例子:
echo anchor("news/local/123","My News","title="News title"");// Prints: <a href="http://example.com/index.php/news/local/123" title="News title">My News</a>
echo anchor("news/local/123","My News", array("title" => "The best news!"));
// Prints: <a href="http://example.com/index.php/news/local/123" title="The best news!">My News</a>
echo anchor("","Click here");
// Prints: <a href="http://example.com">Click Here</a>
7. anchor_popup($uri = "", $title = "", $attributes = FALSE)
- $uri (string) -- URI string
- $title (string) -- Anchor title
- $attributes (mixed) -- HTML attributes
Pop-up hyperlink
string
和 anchor() 函数非常类似,只是它生成的 URL 将会在新窗口被打开。你可以通过第三个参数指定 JavaScript 的窗口属性,以此来控制窗口将如何被打开。如果没有设置第三个参数,将会使用你的浏览器设置打开 一个新窗口。
这里是属性的例子:
$atts = array("width" => 800,
"height" => 600,
"scrollbars" => "yes",
"status" => "yes",
"resizable" => "yes",
"screenx" => 0,
"screeny" => 0,
"window_name" => "_blank"
);
echo anchor_popup("news/local/123","Click Me!",$atts);
注解
上面的属性是函数的默认值,所以你只需要设置和你想要的不一样的参数。如果想使用所有默认的参数, 只要简单的传一个空数组即可: | | echo anchor_popup("news/local/123", "Click Me!", array());
注解
window_name 其实并不算一个属性,而是 Javascript 的 window.open() <http://www.w3schools.com/jsref/met_win_open.asp> 函数的一个参数而已, 该函数接受一个窗口名称或一个 window 对象。
注解
任何不同于上面列出来的其他的属性将会作为 HTML 链接的属性。
8. redirect($uri = "", $method = "auto", $code = NULL)
- $uri (string) -- URI string
- $method (string) -- Redirect method ("auto", "location" or "refresh")
- $code (string) -- HTTP Response code (usually 302 or 303)
void
通过 HTTP 头重定向到指定 URL。你可以指定一个完整的 URL,也可以指定一个 URL 段, 该函数会根据配置文件自动生成该 URL。
第二个参数用于指定一种重定向方法。可用的方法有:auto 、 location 和 refresh 。 location 方法速度快,但是在 ISS 服务器上不可靠。默认值为 auto ,它会根据你的服务器环境 智能的选择使用哪种方法。
第三个参数可选,允许你发送一个指定的 HTTP 状态码,这个可以用来为搜索引擎创建 301 重定向。 默认的状态码为 302 ,该参数只适用于 location 重定向方法,对于 refresh 方法无效。例如:
if ($logged_in == FALSE){
redirect("/login/form/");
}
// with 301 redirect
redirect("/article/13","location",301);
注解
为了让该函数有效,它必须在任何内容输出到浏览器之前被调用。因为输出内容会使用服务器 HTTP 头。
注解
为了更好的控制服务器头,你应该使用 输出类 的 set_header() 方法。
注解
使用 IIS 的用户要注意,如果你隐藏了 Server 这个 HTTP 头, auto 方法将无法检测到 IIS 。 在这种情况下,推荐你使用 refresh 方法。
注解
当使用 HTTP/1.1 的 POST 来访问你的页面时,如果你使用的是 location 方法,会自动使用 HTTP 303 状态码。
重要
该函数会终止脚本的执行。
以上是 CIURL辅助函数 的全部内容, 来源链接: utcz.com/z/513211.html