通用函數

CodeIgniter 使用少許幾個全域函數來協助運行,你也可以在任何時候呼叫它們。這不需要載入任何程式庫或是補助函數。

is_php($version)
Parameters:$version (string) – 版本號
Returns:TRUE 如果當前 PHP 版本至少是你提供的版本號,否則 FALSE
Return type:bool

確定是否正在使用的PHP版本大於提供的版本號。

例子:

if (is_php('5.3'))
{
        $str = quoted_printable_encode($str);
}

如果系統的 PHP 版本等於或高於你所提供的版本,本函數將返回布林值 TRUE。如果系統的 PHP 版本低於你所提供的那個版本,本函數將返回 FALSE。

is_really_writable($file)
Parameters:$file (string) – 檔案路徑
Returns:TRUE 如果路徑是可以被寫入的,否則 FALSE
Return type:bool

在 Windows 伺服器上,除非檔案屬性標示成唯讀否則作業系統不會傳回 FALSE,結果就是即使你真的無法寫入檔案 is_writable() 仍然可能返回 TRUE。這個函數會先嘗試寫入檔案來確認它是否真的可以寫入。一般只有在平台不可靠時才建議你是用這個函數。

這個函數第一步嘗試寫入檔案來確認是否檔案真的可以被寫入。一般只會在推薦的平台上使用這個函數。這個信息可能是不可靠的。

例子:

if (is_really_writable('file.txt'))
{
        echo "I could write to this if I wanted to";
}
else
{
        echo "File is not writable";
}

Note

另請參見 PHP bug #54709 查看更多訊息。

config_item($key)
Parameters:$key (string) – 配置項目的鍵
Returns:配置訊息的鍵值,如果找不到則 NULL
Return type:mixed

Config 函式庫 為獲取配置信息的首選方式,因為 config_item() 可用於檢索單個鍵。查看 Config 函式庫 查看更多訊息。

set_status_header($code[, $text = ''])
Parameters:
  • $code (int) – HTTP 回應狀態碼
  • $text (string) – 客製化狀態碼訊息
Return type:

void

允許你操作設定伺服器標頭狀態。例如:

set_status_header(401);
// 設定標頭狀態成:  Unauthorized

查看 獲得完整標頭列表。

remove_invisible_characters($str[, $url_encoded = TRUE])
Parameters:
  • $str (string) – 輸入字串
  • $url_encoded (bool) – 是否移除 URL-編碼 字元
Returns:

已過濾字串

Return type:

string

這個函數防止插入 NULL 字元,在 ASCII 字元之間,像是 Java\0script 。

例子:

remove_invisible_characters('Java\\0script');
// Returns: 'Javascript'
html_escape($var)
Parameters:$var (mixed) – 要跳脫的變數(字串或陣列)
Returns:已跳脫的 HTML 字串
Return type:mixed

這個函數作為一個 PHP 的原生函數 htmlspecialchars() 的別名,好處是可以接受字串陣列。

這是一個有效防止跨站腳本攻擊的函數(XSS)。

get_mimes()
Returns:關聯檔案型態的陣列
Return type:array

這個函數回傳一個 參考 它是 MIMEs 陣列來自於 application/config/mimes.php

is_https()
Returns:TRUE 如果當前連線使用 HTTP-over-SSL,否則 FALSE
Return type:bool

回傳 TRUE 如果當前是安全(HTTPS)連線,否則 FALSE 在其它情況下(包含 non-HTTP 請求)。

is_cli()
Returns:TRUE 如果當前連線是在 CLI 底下,否則 FALSE
Return type:bool

Returns TRUE 如果應用程式執行在命令列底下,否則 FALSE。

Note

這個函數檢查,變數 PHP_SAPI 值是 ‘cli’ 或者如果常數 STDIN 是已經被定義的,則為判斷是在 CLI 底下執行。

function_usable($function_name)
Parameters:$function_name (string) – 函數名稱
Returns:TRUE 如果這個函數可以被使用,否則 FALSE
Return type:bool

回傳 TRUE 如果這個函數是存在的以及可用的,否則 FALSE。

這個函數執行一個 function_exists() 函數來檢查是否 Suhosin extension <http://www.hardened-php.net/suhosin/> 是被載入的, 檢查是否它沒有關閉這個函數被檢查的功能。

如果你想要檢查你的函數可否使用,這個方法是非常有用的,像是 eval() 以及 exec() , 這兩個函數是非常危險的,在高度嚴格的安全策略服務器可能被禁用。

Note

此功能被引入,因為了 Suhosin 終止腳本執行,但事實證明這是一個錯誤。這個修復已經有一段時間了(版本0.9.34),但遺憾的是還沒有發布。