鍍金池/ 教程/ PHP/ 公共函數(shù)
模型
歡迎來到 CodeIgniter
通過 CLI 執(zhí)行 CodeIgniter
自動載入資源
初探 CodeIgniter
創(chuàng)建核心系統(tǒng)類
應用程序流程圖
安裝指南
CodeIgniter 特性
應用性能分析
web 頁面緩存
公共函數(shù)
安全
處理多環(huán)境
使用 CodeIgniter 庫
管理你的應用程序
創(chuàng)建輔助類
兼容性函數(shù)
開始 CodeIgniter
視圖
視圖文件的 PHP 替代語法
結(jié)束語
靜態(tài)頁面
URI 路由
錯誤處理
版本升級
創(chuàng)建新聞
CodeIgniter URL
讀取新聞
鉤子 - 擴展系統(tǒng)核心
設計和架構(gòu)目標
保留字
疑難解答
下載 CodeIgniter
模式-視圖-控制
輔助函數(shù)
控制器
創(chuàng)建適配器
PHP 開發(fā)規(guī)范

公共函數(shù)

CodeIgniter 使用了一些全局定義的函數(shù)來完成某些操作,你在任何情況下都可以使用,而不需要加載庫或輔助函數(shù)。

is_php($version)

  • 參數(shù) 字符串 $version: 版本號
  • 返回:如果運行中得 PHP 版本大于等于 version,返回 TRUE,否則返回 FALSE
  • 返回類型:bool

檢測 PHP 版本是否大于參數(shù)的版本號。例如:

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

如果安裝的 PHP 版本號大于等于參數(shù) version,返回 TRUE,如果小于參數(shù) version,則返回 FALSE。

is_really_writable($file)

  • 參數(shù) 字符串 $file: 文件路徑
  • 返回:如果路徑可寫,返回 TRUE,否則返回 FALSE
  • 返回類型:bool

在Windows平臺,實際上 is_writable() 函數(shù)在沒有文件寫權(quán)限時也返回 TRUE。那是因為,只有文件是只讀屬性時,操作系統(tǒng)才向 PHP 報告為 FALSE。這個函數(shù)依靠對文件的先行寫入來判斷是否真的具有寫權(quán)限。通常情況下,只有在這個信息不可靠的平臺上才推薦使用。例如:

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

config_item($key)

  • 參數(shù) 字符串 $key: 配置選項鍵值
  • 返回:配置值或者 NULL
  • 返回類型:混合

盡管使用 config_item() 函數(shù)能夠取得單個配置信息,但是 配置庫 是訪問這些信息的優(yōu)選方式。更多信息請見類庫參考。

show_error($message, $status_code[, $heading = 'An Error Was Encountered’])

  • 參數(shù) 混合 $message: 錯誤信息
  • 參數(shù) 整數(shù) $status_code: HTTP 響應狀態(tài)碼
  • 參數(shù) 字符串 $heading: 錯誤頁面頭
  • 返回類型:void

這個函數(shù)調(diào)用 CI_Exception::show_error()。更多細節(jié)參考文檔“錯誤處理”文檔。

show_404([$page = ''[, $log_error = TRUE]])

  • 參數(shù) 字符串 $page: URI 字符串
  • 參數(shù) bool $log_error: 是否將錯誤寫入日志
  • 返回類型:void

這個函數(shù)調(diào)用 CI_Exception::show_404()。更多細節(jié)參考文檔“錯誤處理”文檔。

log_message($level, $message)

  • 參數(shù) 字符串 $level: 日志級別:'error', 'debug' 或 'info'
  • 參數(shù) 字符串 $message: 寫入日志的消息
  • 返回類型:void

這是 CI_Log::write_log() 函數(shù)的別名。更多細節(jié)參考文檔“錯誤處理”文檔。

set_status_header($code[, $text = ‘’])

  • 參數(shù) 整數(shù) $code: HTTP 響應狀態(tài)碼
  • 參數(shù) 字符串 $text: 狀態(tài)碼伴隨的消息
  • 返回類型:void

允許你手工設置服務器狀態(tài)頭,例如:

    set_status_header(401);
    // Sets the header as:  Unauthorized

remove_invisible_characters($str[, $url_encoded = TRUE])

  • 參數(shù) 字符串 $str: 輸入字符串
  • 參數(shù) bool $url_encoded: 是否移除 URL-encoded 字符串
  • 返回:過濾后的字符串
  • 返回類型:string

這個函數(shù)不允許在 ASCII 字符間插入 NULL 字符,比如 Java\\0script。例如:

    remove_invisible_characters('Java\\0script');
    // Returns: 'Javascript'

html_escape($var)

  • 參數(shù) 混合 $var: 需要轉(zhuǎn)義的字符串或數(shù)組
  • 返回:轉(zhuǎn)義過的 HTML 字符串
  • 返回類型:混合

這是原生 htmlspecialchars() 函數(shù)的別名,它能接受字符串數(shù)組。有助于防止跨站腳本攻擊(XSS)。

get_mimes()

  • 返回:和文件類型相關(guān)的數(shù)組
  • 返回類型:數(shù)組

這個函數(shù)返回 application/config/mimes.php 里的 MIMEs 數(shù)組的引用。

is_https()

  • 返回:如果當前使用 HTTP-over-SSL,返回 TRUE,否則返回 FALSE
  • 返回類型:bool

如果使用安全連接(HTTPS),返回 TRUE,否則返回 FALSE

is_cli()

  • 返回:如果當前運行環(huán)境是 CLI,返回 TRUE,否則返回 FALSE。
  • 返回類型:bool

如果應用程序運行在命令行,返回 TRUE,否則返回 FALSE。這個函數(shù)同時檢查 PHP_SAPI 是否是 'cli',或者如果 STDIN 常量已經(jīng)定義過。

function_usable($function_name)

  • 參數(shù) 字符串 $function_name:函數(shù)名
  • 返回:如果函數(shù)可用返回 TRUE,否則返回 FALSE
  • 返回類型:bool

如果一個函數(shù)存在并且可用,返回 TRUE,否則返回 FALSE。 這個使用 function_exists() 函數(shù)檢查,并且如果已經(jīng)加載 Suhosin extension ,檢查是否它有沒有關(guān)閉這個函數(shù)的檢查功能。

如果你想檢查諸如 eval()exec() 函數(shù)是否可用,這個函數(shù)非常有用。這個函數(shù)也非常的危險,因此在高度嚴格的安全策略服務器可能被禁用。

注意:此功能被引入,是為了 Suhosin 終止腳本運行,但事實證明這是一個錯誤。這個錯誤修復了有一段時間了(版本 0.9.34),但是很遺憾它還沒發(fā)布。

上一篇:保留字下一篇:PHP 開發(fā)規(guī)范