1. 程式人生 > 實用技巧 >PHP常用函式

PHP常用函式

PHP 常用函式

轉自github:https://github.com/guanguans/notes

String

比較

函式名 描述
strcmp 該函式是二進位制安全的,且對大小寫敏感
strncmp 前 n 個字元的字串比較(對大小寫敏感)
strcasecmp 比較兩個字串,對大小寫不敏感
strncasecmp 前 n 個字元的字串比較(對大小寫不敏感)
strnatcmp 使用一種 “自然” 演算法來比較兩個字串(對大小寫敏感)
strnatcasecmp 使用一種 “自然” 演算法來比較兩個字串(對大小寫不敏感)
substr_compare 從指定的開始長度比較兩個字串
strcoll 該函式不是二進位制安全的,對大小寫敏感;字串的比較會根據本地設定而變化。(A<a 或="" a="">a)

修改

函式名 描述
str_repeat 把字串重複指定的次數
strrev 反轉字串
str_shuffle 隨機地打亂字串中的所有字元
wordwrap 按照指定長度對字串進行折行處理
chunk_split 把字串分割為一連串更小的部分
money_format 把字串格式化為貨幣字串
number_format 通過千位分組來格式化數字
str_pad 把字串填充為指定的長度
strtolower 把字串轉換為小寫
strtoupper 把字串轉換為大寫
lcfirst 把字串中的首字元轉換為小寫
ucfirst 把字串中的首字元轉換為大寫
ucwords 把字串中每個單詞的首字元轉換為大寫
strtr 轉換字串中特定的字元
str_replace 使用一個字串替換字串中的另一些字元(對大小寫敏感)
str_ireplace 替換字串中的一些字元。(對大小寫不敏感)
substr_replace 函式把字串的一部分替換為另一個字串
hebrev 把希伯來邏輯文字轉換為希伯來可見文字
hebrevc 把希伯來邏輯文字轉換為希伯來可見文字,把新行 (\n
) 轉換為 <br />
convert_cyr_string 把字串由一種 Cyrillic 字符集轉換成另一種

插入

函式名 描述
addslashes 在指定的預定義字元前新增反斜槓,可用於為儲存在資料庫中的字串以及資料庫查詢語句準備合適的字串
stripslashes 刪除由 addslashes() 函式新增的反斜槓
addcslashes 在指定的字元前新增反斜槓
stripcslashes 刪除由 addcslashes() 函式新增的反斜槓
quotemeta 在字串中某些預定義的字元前新增反斜槓

刪除

函式名 描述
trim 從字串的兩端刪除空白字元和其他預定義字元
chop rtrim() 的別名
ltrim 從字串左側刪除空格或其他預定義字元
rtrim 從字串的末端開始刪除空白字元或其他預定義字元

子字串

函式名 描述
substr 返回字串的一部分
strrchr 查詢字串在另一個字串中最後一次出現的位置,並返回從該位置到字串結尾的所有字元
strtok 按需切割字串,不可以用中文切割會亂碼

搜尋

函式名 描述
strchr strstr 的別名
strstr 搜尋一個字串在另一個字串中的第一次出現,返回的是字串的其餘部分(從匹配點),對大小寫敏感
stristr 搜尋一個字串在另一個字串中的第一次出現,返回的是字串的其餘部分(從匹配點),對大小寫不敏感
strpos 返回字串在另一個字串中第一次出現的位置, 返回匹配點位置,對大小寫敏感
stripos 返回字串在另一個字串中第一次出現的位置, 返回匹配點位置,對大小寫不敏感
strrpos 返回字串在另一個字串中最後一次出現的位置, 返回匹配點位置,對大小寫敏感
strripos 返回字串在另一個字串中最後一次出現的位置, 返回匹配點位置,對大小寫不敏感
strpbrk 在字串中搜索指定字元中的任意一個,對大小寫敏感

與陣列相關

函式名 描述
join implode() 的別名
implode 把陣列元素組合為一個字串
explode 把字串打散為陣列
str_split 把字串分割到陣列中

解析

函式名 描述
parse_str 把查詢字串解析到變數中
sscanf 根據指定的格式解析來自一個字串的輸入
str_getcsv 解析 CSV 格式欄位的字串,並返回一個包含所讀取欄位的陣列

與 Html 相關

函式名 描述
html_entity_decode htmlentities() 的反函式,把 HTML 實體轉換為字元
htmlentities 把字元轉換為 HTML 實體
htmlspecialchars_decode 把一些預定義的 HTML 實體轉換為字元
htmlspecialchars 把一些預定義的字元轉換為 HTML 實體
nl2br 在字串中的每個新行 (\n) 之前插入 HTML 換行符 (<br />)
strip_tags 剝去 HTMLXML 以及 PHP 的標籤

與 ASCII 相關

函式名 描述
ord 返回字串第一個字元的 ASCII
chr 從指定的 ASCII 值返回字元

長度、計算

函式名 描述
strlen 返回字串的長度
str_word_count 計算字串中的單詞數
substr_count 計運算元串在字串中出現的次數
count_chars 返回字串所用字元的資訊
strcspn 返回在找到任何指定的字元之前,在字串查詢的字元數
strspn 返回在字串中包含 charlist 引數中指定字元的數目
md5_file 計算檔案的 MD5 雜湊
md5 計算字串的 MD5 雜湊
crc32 計算一個字串的 crc32 多項式,該函式可用於驗證資料的完整性
sha1_file 計算檔案的 SHA-1 雜湊
sha1 計算字串的 SHA-1 雜湊
soundex 計算字串的 soundex 鍵,為發音相似的單詞建立相同的鍵
metaphone 計算字串的 metaphone 鍵,metaphone 鍵字串的英語發音
levenshtein 返回兩個字串之間的 Levenshtein 距離
similar_text 計算兩個字串的匹配字元的數目

輸出

函式名 描述
echo printf,比printf快【echo(strings)
print 輸出一個字串【print() 函式實際上不是函式,所以不必對它使用括號】【 print(strings)
printf 輸出格式化的字串 【printf(format,arg1,arg2,arg++)
vprintf 輸出格式化的字串,與printf不同的是第二引數為陣列【vprintf(format,argarray)
sprintf 返回格式化的字串【sprintf(format,arg1,arg2,arg++)
vsprintf 返回格式化的字串,與sprintf不同的是第二引數為陣列【vsprintf(format,argarray)
fprintf 把格式化的字串寫到指定的輸出流【fprintf(stream,format,arg1,arg2,arg++)
vfprintf 把格式化的字串寫到指定的輸出流【vfprintf(stream,format,argarray)

編碼解碼、校驗

函式名 描述
crypt 單向加密
str_rot13 對字串執行 ROT13 編碼
convert_uudecode uuencode 編碼的字串進行解碼
convert_uuencode 使用 uuencode 演算法對字串進行編碼
quoted_printable_decode quoted-printable 字串解碼為 8 位 ASCII 字串
quoted_printable_encode 把 8 位字串轉換為 quoted-printable 字串
bin2hex 將二進位制資料轉換成十六進位制表示
hex2bin 把十六進位制值轉換為 ASCII 字元

配置資訊

函式名 描述
nl_langinfo 返回指定的本地資訊
setlocale 設定地區資訊(地域資訊)
localeconv 包含本地數字及貨幣資訊格式的陣列
get_html_translation_table 返回被 htmlentities()htmlspecialchars() 函式使用的翻譯表

Array

新建

函式名 描述
array 新建一個數組
compact 建立一個數組,包括變數名和它們的值
array_rand 返回給定陣列中的隨機鍵名
array_fill 用給定的值填充陣列
array_fill_keys 用給定的指定鍵名的鍵值填充陣列
array_pad 指定數量的帶有指定值的元素插入到陣列中
range 建立一個包含指定範圍的元素的陣列
array_combine 通過合併兩個陣列來建立一個新陣列,其中的一個數組元素為鍵名,另一個數組元素為鍵值
array_column 返回陣列中指定的一列
array_chunk 把陣列分割為新的陣列塊,其中每個陣列的單元數目由 size 引數決定

返回新陣列

函式名 描述
array_slice 陣列中根據條件取出一段值,並返回 (key為數字,刪;非數字,保留)
array_splice 從陣列中移除選定的元素,並用新元素取代它。該函式也將返回包含被移除元素的陣列 (刪)

賦值

函式名 描述
list 把陣列中的值賦給一些變數
extract 使用陣列鍵名作為變數名,使用陣列鍵值作為變數值

鍵或值

函式名 描述
array_keys 返回包含陣列中所有鍵名的一個新陣列
array_key_exists 檢查某個陣列中是否存在指定的鍵名,如果鍵名存在則返回 true
key_exists array_key_exists 函式的別名
array_change_key_case 將陣列的所有的鍵轉換為大寫字母
array_replace 根據Key, 使用後面陣列的值替換第一個陣列的值
array_replace_recursive 遞迴地使用後面陣列的值替換第一個陣列的值
array_values 返回一個包含給定陣列中所有鍵值的陣列,但不保留鍵名
array_unique 移除陣列中的重複的值,並返回結果陣列,返回的陣列中鍵名不變
array_flip 返回一個鍵值反轉後的陣列,如果同一值出現了多次,則最後一個鍵名將作為它的值,所有其他的鍵名都將丟失

搜尋

函式名 描述
in_array 搜尋陣列中是否存在指定的值
array_search 在陣列中搜索某個鍵值,並返回對應的鍵名

進出

函式名 描述
array_shift 刪除陣列中第一個元素,並返回被刪除元素的值 (key為數字,刪;非數字,保留)
array_unshift 向陣列插入新元素。新陣列的值將被插入到陣列的開頭 (key為數字,刪;非數字,保留)
array_pop 刪除陣列中的最後一個元素
array_push 向第一個引數的陣列尾部新增一個或多個元素(入棧),然後返回新陣列的長度

排序

函式名 描述
shuffle 把陣列中的元素按隨機順序重新排列 (刪除Key)
array_reverse 返回一個單元順序相反的陣列 (可保留,可刪除,由第二引數決定)
array_multisort 對多個數組或多維陣列進行排序 (key為數字,刪;非數字,保留)
sort 按升序對給定陣列的值排序 (刪除Key)
rsort 按降序對給定陣列的值排序 (刪除Key)
asort 對關聯陣列按照鍵值進行升序排序 (保留Key)
arsort 對關聯陣列按照鍵值進行降序排序 (保留Key)
ksort 對關聯陣列按照鍵名進行升序排序 (保留Key)
krsort 對關聯陣列按照鍵名進行降序排序 (保留Key)
natsort 用” 自然排序” 演算法對陣列進行排序 (保留Key)
natcasesort 用 “自然排序” 演算法對陣列進行不區分大小寫字母的排序(保留Key)
usort 使用使用者自定義的比較函式對陣列中的元素進行排序 (刪除Key)
uksort 使用使用者自定義的比較函式對陣列 中的元素按鍵名進行排序 (保留Key)
uasort 使用使用者自定義的比較函式對陣列中的值進行排序並保持索引關聯 (保留Key)

交集和差集, 合併

函式名 描述
array_diff 返回所有在被比較的陣列中,但是不在任何其他引數陣列中的鍵值。(保留key
array_udiff 比較兩個陣列的鍵值(使用使用者自定義函式比較鍵值),並返回差集
array_diff_key 比較鍵值,返差集;(保留key
array_diff_ukey 使用者定義的比較函式比較鍵值,返差集;(保留key
array_diff_assoc 返回所有在被比較的陣列中,但是不在任何其他引數陣列中的鍵和值(保留key
array_udiff_assoc diff_assoc比,多了自定義回撥函式(引數為鍵值)
array_diff_uassoc 相比diff_assoc,使用的是使用者自定義的比較函式(引數為鍵名)
array_udiff_uassoc 相比diff_uassoc,多了兩個回撥函式,分別用於鍵名和鍵值的比較
array_intersect 比較兩個(或更多個)陣列的鍵值,並返回交集陣列(保留被比較陣列的key
array_uintersect 用自定義回撥函式(引數為鍵值)比較交集
array_intersect_key 比較鍵名計算陣列的交集(保留被比較陣列的key
array_intersect_ukey 用回撥函式比較鍵名來計算陣列的交集(保留被比較陣列的key
array_intersect_assoc 比較兩個陣列的鍵名和鍵值,並返回交集
array_uintersect_assoc intersect_assoc比,多了自定義回撥函式(引數為鍵值)
array_intersect_uassoc 用回撥函式比較兩個陣列的鍵名和鍵值,並返回交集
array_uintersect_uassoc 相比intersect_uassoc,多了兩個回撥函式,分別用於鍵名和鍵值的比較
array_merge 把一個或多個數組合併為一個數組 (key為數字,重新排序;非數字,替換)
array_merge_recursive array_merge_recursive()不會進行鍵名覆蓋,而是將多個相同鍵名的值遞迴組成一個數組

數學運算

函式名 描述
count 返回陣列中元素的數目
sizeof count
array_sum 返回陣列中所有值的和
array_count_values 統計陣列中所有的值出現的次數,陣列中的值作為鍵名,出現的次數作為值
array_product 計算陣列中所有值的乘積
array_map 將函式作用到陣列中的每個值上,每個值都乘以本身,並返回帶有新值的陣列

內部指標

函式名 描述
currrent 返回陣列中的當前單元
pos 返回陣列中的當前單元,同current函式
end 將陣列的內部指標指向最後一個單元,並返回指向的單元
next 將陣列中的內部指標向前移動一位,並返回指向的單元
prev 將陣列的內部指標倒回一位,並返回指向的單元
reset 將陣列的內部指標指向第一個單元,並返回指向的單元(即第一個單元)
each 返回陣列中當前的鍵/值對並將陣列指標向前移動一步
key 返回陣列中內部指標指向的當前單元的鍵名。 但它不會移動指標

使用者自定義函式

函式名 描述
array_walk 對陣列中的每個元素應用使用者自定義函式
array_walk_recursive 該函式與 array_walk()函式的不同在於可以操作更深的陣列(一個數組中包含另一個數組)
array_reduce 向用戶自定義函式傳送陣列中的值,並返回一個字串
array_filter 用回撥函式過濾陣列中的單元 (陣列的鍵名保留不變)

Math

常用計算

函式名 描述
min 找出最小值
max 找出最大值
abs 絕對值
round 對浮點數進行四捨五入
ceil 返回大於或者等於指定表示式的最小整數,天花板函式
floor 返回小於或者等於指定表示式的最大整數,地板函式
intdiv 對除法結果取整,返回商
fmod 返回除法的浮點數餘數,返回餘數
is_nan 判斷是否為合法數值
hypot 計算一直角三角形的斜邊長度
sqrt 平方根

角度、弧度

函式名 描述
pi 得到圓周率值
deg2rad 將角度轉換為弧度
rad2deg 將弧度數轉換為相應的角度數

進位制轉換

函式名 描述
base_convert 在任意進位制之間轉換數字
decbin 十進位制轉換為二進位制
bindec 二進位制轉換為十進位制
decoct 十進位制轉換為八進位制
octdec 八進位制轉換為十進位制
dechex 十進位制轉換為十六進位制
hexdec 十六進位制轉換為十進位制

隨機數

函式名 描述
lcg_value 組合線性同餘發生器,返回範圍為 (0, 1) 的一個偽隨機數
rand 產生一個隨機整數,如果沒有提供可選引數 minmaxrand() 返回 0 到 RAND_MAX 之間的偽隨機整數。
mt_rand 生成更好的隨機整數
getrandmax 顯示隨機數最大的可能值
mt_getrandmax 顯示隨機數的最大可能值
srand 播下隨機數發生器種子,自 PHP 4.2.0 起,不再需要用 srand()mt_srand() 函式給隨機數發生器播種,現在已自動完成
mt_srand 播下一個更好的隨機數發生器種子 (Mersenne Twister)

對數

函式名 描述
log 自然對數
log10 10 為底的對數
log1p 返回 log(1 + number),甚至當 number 的值接近零也能計算出準確結果

指數

函式名 描述
exp 計算 e 的指數
expm1 返回 exp(number) - 1,甚至當 number 的值接近零也能計算出準確結果
pow 指數表示式

正切正弦餘弦

函式名 描述
tan 正切
atan 反正切
tanh 雙曲正切
atanh 反雙曲正切
atan2 兩個引數的反正切
sin 正弦
asin 反正弦
sinh 雙曲正弦
asinh 反雙曲正弦
cos 餘弦
acos 反餘弦
cosh 雙曲餘弦
acosh 反雙曲餘弦

有限值、無限值

函式名 描述
is_finite 判斷是否為有限值
is_infinite 判斷是否為無限值

Directory

資料夾,獲取目錄資訊

函式名 描述
dir 開啟一個目錄控制代碼,並返回一個物件。這個物件包含三個方法:read() , rewind() 以及 close()
opendir 開啟一個目錄控制代碼,,並返回該控制代碼。可由 closedir()readdir()rewinddir() 使用
rewinddir 倒回目錄控制代碼
getcwd 取得當前工作目錄
scandir 列出指定路徑中的檔案和目錄
chdir 把當前的目錄改變為指定的目錄。若成功,則該函式返回 true,否則返回 false
chroot 把當前程序的根目錄改變為指定的目錄。若成功,則該函式返回 true,否則返回 false

資料夾,讀

函式名 描述
readdir 從目錄控制代碼中讀取條目

資料夾,關

函式名 描述
closedir 關閉目錄控制代碼

FileSystem

建立

函式名 描述
tmpfile 建立一個臨時檔案
tempnam 建立一個具有唯一檔名的檔案。在指定目錄中建立一個具有唯一檔名的檔案。如果該目錄不存在,tempnam() 會在系統臨時目錄中生成一個檔案,並返回其檔名。
mkdir 新建目錄

獲取檔案資訊

函式名 描述
fileatime 取得檔案的上次訪問時間。如果出錯則返回 false。時間以 Unix 時間戳的方式返回
filectime 取得檔案的 inode 修改時間。如果出錯則返回 false。時間以 Unix 時間戳的方式返回
filemtime 取得檔案內容修改時間。若成功,則時間以 Unix 時間戳的方式返回。若失敗,則返回 false
fileinode 取得檔案的 inode編號
filegroup 取得檔案的組ID
fileowner 取得檔案的所有者
fileperms 取得檔案的許可權
filesize 取得檔案大小
filetype 取得檔案型別
basename 返回路徑中的檔名部分
dirname 返回路徑中的目錄部分
realpath 返回規範化的絕對路徑名
stat 獲取指定檔案的統計資訊。
fstat 通過已開啟的檔案指標取得檔案資訊
pathinfo 返回檔案路徑的資訊
disk_free_space 返回目錄中的可用空間
diskfreespace disk_free_space 的別名
disk_total_space 返回一個目錄的磁碟總大小
realpath_cache_get Get realpath cache entries
realpath_cache_size Get realpath cache size

改變

函式名 描述
chgrp 改變檔案所屬的組
chmod 改變檔案許可權
chown 改變檔案的所有者
touch 設定檔案的訪問和修改時間
umask 改變當前的 umask
rename 重新命名一個檔案或目錄
ftruncate 將檔案截斷到給定的長度
flock 鎖定或釋放檔案。

移動或拷貝

函式名 描述
copy 拷貝檔案
move_uploaded_file 將上傳的檔案移動到新位置

讀寫

函式名 描述
feof 測試檔案指標是否到了檔案結束的位置
fgetc 從檔案指標中讀取, 返回一個包含有一個字元的字串
fgetcsv 從檔案指標中讀入一行並解析 CSV 欄位
fputcsv 將行格式化為 CSV 並寫入檔案指標
fgets 從檔案指標中讀取一行
fgetss 從檔案指標中讀取一行並過濾掉 HTML 標記
file 把整個檔案讀入一個數組中。陣列中的每個單元都是檔案中相應的一行,包括換行符在內。
readfile 讀入一個檔案並寫入到輸出緩衝。
fscanf 根據指定的格式對來自開啟的檔案的輸入進行解析。
fread 讀取檔案(可安全用於二進位制檔案)
fwrite 寫入檔案(可安全用於二進位制檔案)
fputs fwrite 的別名
file_get_contents 將整個檔案讀入一個字串
file_put_contents 將一個字串寫入檔案
parse_ini_file 解析一個配置檔案
parse_ini_string Parse a configuration string
fnmatch 根據指定的模式來匹配檔名或字串
glob 返回匹配指定模式的檔名或目錄
fopen 開啟檔案或者 URL
fclose 關閉一個已開啟的檔案指標
rewind 倒回檔案指標的位置
fseek 在檔案指標中定位
ftell 返回檔案指標讀 / 寫的位置
fpassthru 將給定的檔案指標從當前的位置讀取到 EOF,並把結果寫到輸出緩衝區。
set_file_buffer 設定開啟檔案的緩衝大小。
fflush 將緩衝內容輸出到檔案
clearstatcache 清除檔案狀態快取

刪除

函式名 描述
unlink 刪除檔案
rmdir 刪除目錄
delete 參見 unlinkunset

判斷

函式名 描述
is_dir 判斷給定檔名是否是一個目錄
is_executable 判斷給定檔名是否可執行
is_file 判斷給定檔名是否為一個正常的檔案
is_link 判斷給定檔名是否為一個符號連線
is_readable 判斷給定檔名是否可讀
is_uploaded_file 判斷檔案是否是通過 HTTP POST 上傳的
is_writable 判斷給定的檔名是否可寫
is_writeable is_writable 的別名
file_exists 檢查檔案或目錄是否存在
函式名 描述
link 建立一個硬連線
linkinfo 獲取一個連線的資訊
lstat 給出一個檔案或符號連線的資訊
readlink 返回符號連線指向的目標
symlink 建立符號連線
lchgrp Changes group ownership of symlink
lchown Changes user ownership of symlink

程序

函式名 描述
pclose 關閉程序檔案指標
popen 開啟程序檔案指標

ErrorHandling

建立

函式名 描述
trigger_error 建立使用者定義的錯誤訊息,用於在使用者指定的條件下觸發一個錯誤訊息。它與內建的錯誤處理器一同使用,也可以與由 set_error_handler() 函式建立的使用者自定義函式使用
user_error trigger_error 的別名
set_error_handler 設定使用者自定義的錯誤處理函式,替換內建的錯誤處理器
set_exception_handler 設定使用者自定義的異常處理函式,替換內建的異常處理器

獲取

函式名 描述
error_get_last 以陣列的形式返回最後發生的錯誤
debug_backtrace 返回異常追溯陣列(backtrace

清理

函式名 描述
error_clear_last 清除記憶體中最近的異常資訊

恢復

函式名 描述
restore_error_handler 之前的錯誤處理程式可能是在錯誤處理程式或使用者自定義函式中構建的,恢復內建的錯誤處理程式
restore_exception_handler 之前的異常處理程式可能是在異常處理程式或使用者自定義函式中構建的,恢復內建的異常處理程式

輸出

函式名 描述
error_log 向伺服器錯誤記錄、檔案或遠端目標傳送一個錯誤
debug_print_backtrace 輸出異常追溯陣列(backtrace

配置

函式名 描述
error_reporting 設定 PHP 的報錯級別並返回當前級別

Date/Time

設定時間(時間戳)

函式名 描述
date_timestamp_set 設定基於 Unix 時間戳的日期和時間

獲取時間(時間戳)

函式名 描述
time 返回當前時間的 Unix 時間戳
microtime 返回當前 Unix 時間戳和微秒數
mktime 返回一個日期的 Unix 時間戳
gmmktime 返回 GMT 日期的 UNIX 時間戳
date_timestamp_get 返回今天的日期和時間的 Unix 時間戳
strtotime 將任何英文文字的日期或時間描述解析為 Unix 時間戳

設定時間(非時間戳)

函式名 描述
date_time_set 用於設定時間
date_date_set 設定一個新的日期
strftime 根據區域設定格式化本地日期和時間
gmstrftime 根據區域設定格式化 GMT/UTC 日期和時間
date_isodate_set 根據 ISO 8601 標準設定日期,使用周和天的偏移量(而不是使用一個規定的日期)

獲取時間(非時間戳)

函式名 描述
localtime 返回本地時間(一個數組存放關於時間的各項資訊)
getdate 返回一個根據 timestamp 得出的包含有日期資訊的結合陣列。如果沒有給出時間戳,則認為是當前本地時間
gettimeofday 返回一個包含當前時間資訊的陣列
strptime 解析由 strftime() 生成的時間 / 日期
date_parse 返回一個包含指定日的詳細資訊的關聯陣列
date_parse_from_format 根據指定的格式返回一個包含指定日期資訊的關聯陣列
date 格式化一個本地時間/日期
gmdate 格式化 GMT/UTC 日期和時間,並返回格式化的日期字串
idate 將本地時間 / 日期格式化為整數,與 date() 不同,idate() 只接受一個字元作為 format 引數
date_format 返回一個根據指定格式進行格式化的日期
date_interval_format 用於格式化時間間隔
date_interval_create_from_date_string Sets up a DateInterval from the relative parts of the string
date_sun_info 返回一個包含有關指定日期與地點的日出 / 日落和黃昏開始 / 黃昏結束的資訊的陣列
date_sunrise 返回指定日期與地點的日出時間
date_sunset 返回指定日期與地點的日落時間
date_create 返回一個新的 DateTime 物件
date_create_from_format 返回一個根據指定格式進行格式化的新的 DateTime 物件
date_create_immutable Returns new DateTimeImmutable object
date_create_immutable_from_format Returns new DateTime Immutable object formatted according to the specified format

時間加減

函式名 描述
date_add 新增日、月、年、時、分和秒到一個日期
date_sub 從指定日期減去日、月、年、時、分和秒
date_modify 修改時間戳
date_diff 返回兩個 DateTime 物件間的差值

校驗

函式名 描述
checkdate 用於驗證格利高裡日期

時區

函式名 描述
timezone_open 建立一個新的 DateTimeZone 物件
timezone_name_get 返回時區的名稱
timezone_name_from_abbr 根據時區縮略語返回時區名稱
timezone_abbreviations_list 返回包含夏令時、偏移量和時區名稱的關聯陣列
timezone_identifiers_list 返回帶有所有時區識別符號的數值陣列
timezone_location_get 返回指定時區的位置資訊
date_offset_get 返回時區偏移
timezone_offset_get 返回相對於 GMT 的時區偏移
timezone_transitions_get 返回所有時區轉換
timezone_version_get 以字串形式返回時區資料庫的版本
date_timezone_get Alias of DateTime::getTimezone
date_timezone_set Alias of DateTime::setTimezone
date_default_timezone_get 返回指令碼中所有日期 / 時間函式使用的預設時區
date_default_timezone_set 設定指令碼中所有日期 / 時間函式使用的預設時區

其它

函式名 描述
date_get_last_errors 返回解析日期字串時找到的警告 / 錯誤

Calendar

日曆資訊、月、星期、時間戳

函式名 描述
cal_info 返回選定曆法的資訊
cal_days_in_month 返回某個曆法中某年中某月的天數
JDDayOfWeek 返回星期的日期
JDMonthName 返回月份的名稱
jdtounix 轉變Julian Day計數為一個Unix時間戳
unixtojd 轉變Unix時間戳為Julian Day計數

日曆轉換

函式名 描述
cal_to_jd 從一個支援的歷法轉變為 Julian Day(儒略曆)計數。
cal_from_jd 轉換Julian Day計數到一個支援的歷法。
FrenchToJD 從一個French Republican曆法(法國共和曆)的日期得到Julian Day計數。
JDToFrench 轉變一個Julian Day計數到French Republican曆法的日期
GregorianToJD 轉變一個Gregorian曆法(格利高裡曆法)日期到Julian Day計數
JDToGregorian 轉變一個Julian Day計數為Gregorian曆法日期
JewishToJD 轉變一個Jewish曆法(猶太曆法)的日期為一個Julian Day計數
jdtojewish 轉換一個julian天數為Jewish曆法的日期
JulianToJD 轉變一個Julian曆法(儒略曆)的日期為Julian Day計數
JDToJulian 轉變一個Julian Day計數到Julian曆法的日期

西方特用

函式名 描述
easter_date 得到指定年份的復活節午夜時的 Unix 時間戳。
easter_days 得到指定年份的 3 月 21 日到復活節之間的天數