URL 輔助函數(shù)?
URL 輔助函數(shù)文件包含的函數(shù)輔助 URLs 運(yùn)行。
加載 URL 輔助函數(shù)?
在每個(gè)請求中 URL 輔助函數(shù)由框架自動(dòng)地加載。
通用函數(shù)?
下文函數(shù)是通用的:
-
site_url
([$uri = ''[, $protocol = NULL[, $altConfig = NULL]]])? 參數(shù): - $uri (string) – URI string
- $protocol (string) – 協(xié)議,處理資料傳送的標(biāo)準(zhǔn),例如 ‘http’ 或者 ‘https’
- $altConfig (\Config\App) – 使用更替配置
返回: Site URL
返回類型: string
返回你的 site URL,就像在你的配置文件里說明的。 index.php 文件(或者在你的配置文件里任何你已經(jīng)設(shè)置在你網(wǎng)站的 index_page) 將會(huì)添加到 URL,如同你通過函數(shù)程序段的一些 URL,外加在你的配置文件中已經(jīng)設(shè)置的 url_suffix.
在你的 URL 改變的事件中,你被鼓勵(lì)在任何時(shí)間使用函數(shù)生成本地 URL 以便你的頁面將變得更加便攜。
程序段能隨意地像 string 或者 array 通過函數(shù)。下文是 string 事例:
echo site_url('news/local/123');
上文的事例返回的地址如下: http://example.com/index.php/news/local/123
這里是一個(gè)通過數(shù)組程序段的事例:
$segments = ['news', 'local', '123']; echo site_url($segments);
對不同的網(wǎng)站如果生成 URLs 你或許會(huì)找到比你的配置更有用的更替配置,該函數(shù)包含不同配置優(yōu)先權(quán)。 我們?yōu)閱卧獪y試框架本身使用這個(gè)函數(shù)。
-
base_url
([$uri = ''[, $protocol = NULL]])? 參數(shù): - $uri (string) – URI string
- $protocol (string) – 協(xié)議,處理資料傳送的標(biāo)準(zhǔn),例如 ‘http’ 或者 ‘https’
返回: 基地址 URL
返回類型: string
返回你網(wǎng)站的基地址 URL, 如同在你配置文件里具體說明的。事例:
echo base_url();
如同
site_url()
該函數(shù)返回相同的事件, 排除 index_page 或者 url_suffix 被附加的情況。也如函數(shù)
site_url()
, 你能提供程序段如 string 或者 array. 這里是 string 事例:echo base_url("blog/post/123");
上文事例返回的地址如下: http://example.com/blog/post/123
因?yàn)椴煌?
site_url()
函數(shù)是有用的, 你能提供 string 值到文件里,譬如圖片或者層疊式樣式表。 例如:echo base_url("images/icons/edit.png");
上文的輸出函數(shù)將給你如下面的鏈接: http://example.com/images/icons/edit.png
-
current_url
([$returnObject = false])? 參數(shù): - $returnObject (boolean) – True 如果你想要 URI 事例返回,代替 string。
返回: 最近的 URL
返回類型: string|URI
返回最近被瀏覽過的頁面的正確的 URL (包括程序段)。
注解
引用下面的函數(shù)是同樣的:
base_url(uri_string());
-
previous_url
([$returnObject = false])? 參數(shù): - $returnObject (boolean) – True 如果你想要 URI 事例返回,代替 string.
返回: URL 用戶以前通過的
返回類型: string|URI
返回完整頁面的 URL (包含程序段)是用戶以前通過的。
由于安全問題造成盲目的信任 HTTP_REFERER 系統(tǒng)變量,在對話里如果它是有用的 CodeIgniter 將儲(chǔ)存以前瀏覽的頁面。 這保證我們將常常使用已知且可信的源,如果對話已經(jīng)被加載了,或者是別的方式不能得到的,那么 HTTP_REFERER 的凈化版本將會(huì)被應(yīng)用。
-
uri_string
()? 返回: An URI string 返回類型: string 返回你的最近 URL 的路徑部分。例如,如果你的 URL 是這樣的:
http://some-site.com/blog/comments/123
函數(shù)將返回:
blog/comments/123
-
index_page
([$altConfig = NULL])? 參數(shù): - $altConfig (\Config\App) – 使用更替配置
返回: ‘index_page’ 值
返回類型: mixed
返回你網(wǎng)站的 index_page, 如同在你的配置文件里明確說明的。 事例:
echo index_page();
如同用
site_url()
,你也許要具體制定一個(gè)更替配置。 對不同的網(wǎng)站如果生成 URLs 你或許會(huì)找到比你現(xiàn)有的更有用的更替配置,函數(shù)包含不同配置優(yōu)先權(quán)。 我們?yōu)閱卧獪y試框架本身使用這個(gè)函數(shù)。
-
anchor
([$uri = ''[, $title = ''[, $attributes = ''[, $altConfig = NULL]]]])? 參數(shù): - $uri (mixed) – URI 程序段的 URI string 或者 array
- $title (string) – 錨定 title
- $attributes (mixed) – HTML 屬性
- $altConfig (ConfigApp) – 使用更替配置
返回: HTML 超連結(jié) (錨定 tag)
返回類型: string
基于你本地網(wǎng)站 URL 創(chuàng)建標(biāo)準(zhǔn) HTML 錨定鏈接。
第一個(gè)參數(shù)能包含任意你希望應(yīng)用到 URL 的程序段。 如同上文用
site_url()
函數(shù),程序段可以是 string 或者 array.注解
如果你正在構(gòu)造的鏈接對于你的應(yīng)用是內(nèi)部的則不包含基地址 URL (http://…).在你的配置文件里函數(shù)將會(huì)明確說明的從信息里被自動(dòng)添加。你希望附加到的 URL 僅僅包含 URI 的程序段。
第二參數(shù)是你想要鏈接表達(dá)的正文。如果你留下第二個(gè)程序?yàn)榭?,URL 將會(huì)被應(yīng)用。
第三個(gè)參數(shù)包含你想要添加到鏈接里的的屬性列表。屬性可以是簡單的 string 或者組合數(shù)組。
這里是一些示例
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/index.php">Click here</a>
如同上文闡述的,你也許可以明確說明更替配置。 如果對不同網(wǎng)站生成鏈接你也許會(huì)發(fā)現(xiàn)更替配置比你的配置是更有用的,它包含不同的配置優(yōu)先權(quán)。 我們?yōu)閱卧獪y試框架自身使用這個(gè)函數(shù)。
注解
屬性載入錨定函數(shù)是自動(dòng)地退出對 XSS 攻擊不利的保護(hù)。
-
anchor_popup
([$uri = ''[, $title = ''[, $attributes = FALSE[, $altConfig = NULL]]]])? 參數(shù): - $uri (string) – URI string
- $title (string) – 錨定 title
- $attributes (mixed) – HTML 屬性
- $altConfig (ConfigApp) – 使用更替配置
返回: 自動(dòng)跳起的 hyperlink
返回類型: string
幾乎同源于
anchor()
函數(shù),除了在新窗口里它是開放的 URL。 在第三個(gè)參數(shù)中你能明確說明 JavaScript 窗口屬性去控制窗口如何被打開。 如果第三個(gè)參數(shù)沒有設(shè)定,它將會(huì)帶著你自身的瀏覽器設(shè)定去簡單地打開一個(gè)新窗口。這里是帶著屬性的事例:
$atts = [ '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);
As above, you may specify an alternate configuration. You may find the alternate configuration useful if generating links for a different site than yours, which contains different configuration preferences. We use this for unit testing the framework itself.
注解
上文屬性是默認(rèn)函數(shù)因此你僅僅需要去設(shè)置哪些個(gè)不同于你需要的屬性。在第三個(gè)參數(shù)里如果你想要函數(shù)去簡單地通過空數(shù)組使用所有它的默認(rèn)值:
- ::
- echo anchor_popup(‘news/local/123’, ‘Click Me!’, []);
注解
window_name 不是真實(shí)的屬性,但是對于 JavaScript 爭論 window.open() 方法,它接受任何一方的窗口名或者窗口目標(biāo)。
注解
任何超過上文列表的其他屬性將會(huì)被分列就像 HTML 屬性對于錨定 tag. 如同上文描述的,你也許可以明確說明更替配置。 你也許會(huì)發(fā)現(xiàn)如果正生成的鏈接對不同的網(wǎng)站更替配置比你的配置更有用,他包含不同的配置優(yōu)先權(quán)。 我們?yōu)閱卧獪y試框架自身使用這個(gè)函數(shù)。
注解
屬性載入錨定自動(dòng)跳起函數(shù)是自動(dòng)地退出對 XSS 攻擊不利的保護(hù)。
-
mailto
($email[, $title = ''[, $attributes = '']])? 參數(shù): - $email (string) – E-mail 地址
- $title (string) – 錨定 title
- $attributes (mixed) – HTML 屬性
返回: “mail to” 超連結(jié)
返回類型: string
創(chuàng)建標(biāo)準(zhǔn)的 HTML 郵件鏈接。用法事例:
echo mailto('me@my-site.com', 'Click Here to Contact Me'); 如同用上文 :php:func:`anchor()` tab 函數(shù), 你可以使用第三個(gè)參數(shù)設(shè)定屬性:: $attributes = array('title' => 'Mail me'); echo mailto('me@my-site.com', 'Contact Me', $attributes);
注解
屬性載入錨定 mailto 函數(shù)是自動(dòng)地退出對 XSS 攻擊不利的保護(hù)。
-
safe_mailto
($email[, $title = ''[, $attributes = '']])? 參數(shù): - $email (string) – E-mail 地址
- $title (string) – 錨定 title
- $attributes (mixed) – HTML 屬性
返回: 安全垃圾郵件 “mail to” 超連結(jié)
返回類型: string
完全相似于
mailto()
函數(shù)除了 mailto tag 的模糊版本, 由于垃圾郵件群聊程序用 JavaScript 寫了該函數(shù)正使用序數(shù)數(shù)字用以從保護(hù)已經(jīng)收獲的 e-mail 地址。
-
auto_link
($str[, $type = 'both'[, $popup = FALSE]])? 參數(shù): - $str (string) – 輸入 string
- $type (string) – 鏈接類型 (‘email’, ‘url’ 或者 ‘both’)
- $popup (bool) – 是否創(chuàng)建自動(dòng)跳起鏈接
返回: 鏈接化的 string
返回類型: string
在字符到鏈接里自動(dòng)地轉(zhuǎn)換包含 URLs 和 e-mail 地址。事例:
$string = auto_link($string);
第二參數(shù)決定是否 URLs 和 e-mail 是轉(zhuǎn)換了僅僅一個(gè)或者其他什么的。如果參數(shù)不是明確的說明默認(rèn)行為是兼有的。 E-mail 鏈接編碼如同上文顯示的
safe_mailto()
一樣。僅轉(zhuǎn)換 URLs:
$string = auto_link($string, 'url');
僅轉(zhuǎn)換 e-mail 地址:
$string = auto_link($string, 'email');
第三個(gè)參數(shù)決定是否鏈接在新窗口被顯示。 值是 TRUE 或者 FALSE (boolean):
$string = auto_link($string, 'both', TRUE);
注解
僅有的被普遍承認(rèn)的 URLs 這些鏈接用 “www.” 或者用 “://” 開始。
-
url_title
($str[, $separator = '-'[, $lowercase = FALSE]])? 參數(shù): - $str (string) – 輸入 string
- $separator (string) – 字符分隔符
- $lowercase (bool) – 是否轉(zhuǎn)換輸出 string 為小寫字型
返回: 已經(jīng)格式化的 string
返回類型: string
取 string 作為輸入值并創(chuàng)建友好人性化的 URL string. 這是有用的,例如,在 URL 里你有個(gè)blog ,在 blog 里你想要使用你的整個(gè)主題。事例:
$title = "What's wrong with CSS?"; $url_title = url_title($title); // Produces: Whats-wrong-with-CSS
第二個(gè)參數(shù)決定詞匯的定義符號(hào)。默認(rèn)的破折號(hào)被使用。更好的選項(xiàng)是: - (破折號(hào)) 或者 _ (下劃線)。
例如:
$title = "What's wrong with CSS?"; $url_title = url_title($title, 'underscore'); // Produces: Whats_wrong_with_CSS
第三個(gè)參數(shù)決定是或者不是小寫字符是被強(qiáng)迫的。默認(rèn)他們不是。選項(xiàng)是 boolean TRUE/FALSE.
例如:
$title = "What's wrong with CSS?"; $url_title = url_title($title, 'underscore', TRUE); // Produces: whats_wrong_with_css
-
prep_url
($str = '')? 參數(shù): - $str (string) – URL string
返回: 協(xié)議前綴 URL string
返回類型: string
在事件里這個(gè)函數(shù)正從一個(gè) URL 錯(cuò)過,它將添加 http:// 協(xié)議前綴。 通過 URL string 的函數(shù)像下文這樣:
$url = prep_url('example.com');