PHP 內建函式庫龐大,熟悉高頻核心函式能大幅提升開發效率。本文彙整陣列、字串、日期時間、檔案系統、MySQL、輸出緩衝、正則、Session、變數處理、URL、數學等十大類別的常用函式,附中文說明與分類索引,適合離線速查。
陣列函式
| 函式 | 用途 |
array_change_key_case | 鍵名大小寫轉換 |
array_chunk | 分割陣列 |
array_combine | 兩陣列合併為鍵值對 |
array_count_values | 統計值出現次數 |
array_diff* | 差集(多種比較模式) |
array_fill_keys/array_fill | 填充陣列 |
array_filter | 回調過濾 |
array_flip | 交換鍵值 |
array_intersect* | 交集(多種比較模式) |
array_key_exists | 檢查鍵是否存在 |
array_keys/array_values | 取得所有鍵/值 |
array_map | 回調映射 |
array_merge* | 合併陣列 |
array_multisort | 多維/多陣列排序 |
array_pop/array_push | 堆疊操作 |
array_rand | 隨機取鍵 |
array_reduce | 歸約為單值 |
array_reverse | 反轉陣列 |
array_search | 搜尋值回傳鍵 |
array_shift/array_unshift | 隊列操作 |
array_slice/array_splice | 切片/替換 |
array_sum/array_product | 加總/乘積 |
array_unique | 去重 |
array_walk* | 遍歷應用函式 |
sort/rsort/asort/ksort... | 各類排序 |
shuffle | 打亂順序 |
count/sizeof | 計算長度 |
current/next/prev/reset/end/each | 內部指標操作 |
list | 解構賦值 |
range | 建立範圍陣列 |
compact/extract | 變數與陣列互轉 |
字串函式
| 函式 | 用途 |
strlen/mb_strlen | 長度(位元組/字元) |
substr/mb_substr | 子字串 |
strpos/stripos/strrpos | 搜尋位置 |
str_replace/str_ireplace | 替換 |
preg_match/preg_match_all/preg_replace/preg_split | PCRE 正則 |
explode/implode | 分割/合併 |
trim/ltrim/rtrim | 去除空白 |
htmlspecialchars/htmlentities | HTML 編碼(防 XSS 關鍵) |
htmlspecialchars_decode | HTML 解碼 |
strip_tags | 移除標籤 |
addslashes/stripslashes | 引號轉義/還原 |
json_encode/json_decode | JSON 序列化 |
serialize/unserialize | PHP 序列化 |
md5/sha1/hash | 雜湊 |
base64_encode/base64_decode | Base64 |
urlencode/urldecode/rawurlencode | URL 編碼 |
strtolower/strtoupper/ucfirst/ucwords | 大小寫轉換 |
sprintf/vsprintf | 格式化字串 |
str_split/str_word_count | 轉陣列/統計單字 |
similar_text/levenshtein | 相似度比較 |
soundex/metaphone | 發音編碼 |
parse_str | 查詢字串解析為變數 |
chr/ord | ASCII 字元/碼互轉 |
日期時間函式
| 函式 | 用途 |
date/gmdate | 格式化本地/UTC 時間 |
time | 當前 Unix 時間戳 |
microtime | 微秒級時間戳 |
strtotime | 英文文字解析為時間戳 |
mktime/gmmktime | 日期組合為時間戳 |
getdate | 時間戳轉關聯陣列 |
strftime/gmstrftime | 區域化格式化 |
date_default_timezone_set/get | 設定/取得預設時區 |
DateTime 類別 | 物件導向日期時間(推薦) |
檔案系統函式
| 函式 | 用途 |
fopen/fclose/fread/fwrite/fseek/ftell | 檔案指標操作 |
file_get_contents/file_put_contents | 一次讀寫整個檔案 |
file | 讀檔為陣列 |
copy/unlink/rename | 複製/刪除/重命名 |
mkdir/rmdir | 建立/刪除目錄 |
opendir/readdir/closedir/scandir | 目錄遍歷 |
file_exists/is_file/is_dir/is_readable/is_writable | 狀態檢查 |
filesize/filemtime/filectime/fileatime | 屬性取得 |
fileperms | 權限取得 |
clearstatcache | 清除 stat 快取 |
realpath | 規範化絕對路徑 |
pathinfo | 路徑資訊解析 |
tempnam/tmpfile | 建立暫存檔 |
touch | 設定存取/修改時間 |
flock | 檔案鎖 |
glob | 模式匹配檔案 |
parse_ini_file | 解析 INI 設定檔 |
MySQL 函式(mysql_* 已棄用,建議改用 PDO/MySQLi)
| 函式 | 用途 |
mysql_connect/mysql_pconnect | 連線/持久連線 |
mysql_select_db | 選擇資料庫 |
mysql_query | 執行 SQL |
mysql_fetch_array/assoc/row/object | 取得結果列 |
mysql_num_rows/mysql_num_fields | 列/欄位數 |
mysql_insert_id | 取得自增 ID |
mysql_real_escape_string | SQL 轉義 |
mysql_free_result | 釋放結果集 |
mysql_close | 關閉連線 |
mysql_error/mysql_errno | 錯誤資訊 |
輸出緩衝函式
| 函式 | 用途 |
ob_start | 開啟緩衝 |
ob_get_contents/ob_get_clean/ob_get_flush | 取得緩衝內容 |
ob_flush/ob_end_flush | 輸出並關閉/保留緩衝 |
ob_clean/ob_end_clean | 清空並關閉/保留緩衝 |
ob_gzhandler | gzip 壓縮輸出回調 |
flush | 刷新 PHP/輸出層緩衝 |
Session 函式
| 函式 | 用途 |
session_start | 啟動/恢復 Session |
session_destroy | 銷毀 Session 資料 |
session_regenerate_id | 重新產生 ID(防固定攻擊) |
session_set_save_handler | 自訂儲存驅動 |
session_write_close | 寫入並關閉 Session |
$_SESSION | 超全域陣列存取資料 |
變數處理函式
| 函式 | 用途 |
isset/empty/unset | 檢查/釋放變數 |
gettype/settype | 取得/設定型別 |
is_array/is_bool/is_int/is_float/is_string/is_object/is_null/is_numeric/is_scalar/is_callable/is_resource | 型別檢查 |
intval/floatval/strval | 轉型 |
var_dump/var_export/print_r | 除錯輸出 |
serialize/unserialize | 序列化 |
get_defined_vars | 取得所有已定義變數 |
URL 函式
| 函式 | 用途 |
parse_url | 解析 URL 組成部分 |
http_build_query | 陣列編碼為查詢字串 |
get_headers | 取得 HTTP 回應標頭 |
get_meta_tags | 提取 meta 標籤 |
數學函式
| 函式 | 用途 |
abs/ceil/floor/round | 絕對值/進位/捨去/四捨五入 |
min/max | 最小/最大值 |
rand/mt_rand | 隨機整數(mt_ 更好) |
sqrt/pow/exp/log | 根/冪/指數/對數 |
sin/cos/tan/pi | 三角函數 |
base_convert | 任意進制轉換 |
decbin/dechex/decoct/bindec/hexdec/octdec | 進制互轉 |
fmod | 浮點數取模 |
hypot | 斜邊長度 |
deg2rad/rad2deg | 角度/弧度轉換 |
建議將此表格匯出為 Markdown/PDF 離線保存,或配合 IDE 代碼片段功能建立快速輸入模板。現代開發更推薦使用 PHPStan/Psalm 靜態分析與 IDE 智能提示,減少查閱手冊頻率。