字符串函數
strlen:獲取字符串長度,字節長度
substr_count 某字符串出現的次數
substr:字符串截取,獲取字符串(按照字節進行截取)
mb_strlenmb_substr
strchr:與substr相似,從指定位置截取一直到最後
strrchr(獲取文件後綴名):與strchr一樣,只是從右邊開始查找字符
strtolower:所有的字符都小寫(針對英文字母)
strtoupper:所有的字符都大寫
strrev:字符串反轉(只能反轉英文:英文存儲只有一個字節),按照字節進行反轉
strpos:從字符串中找對應字符出現的位置(數字下標),從最左邊開始找
strrpos:與strpos一樣,只是從字符串的右邊開始找
trim:去掉函數兩邊的字符,默認是空格
str_split 函數把字符串分割到數組中。
chunk_split() 函數把字符串分割爲一連串更小的部分
str_repeat("Shanghai",5);把字符串 "Shanghai " 重複 5 次
str_replace('\\', '/', dirname(__DIR__))); 替換
ucfirst 首字母大寫
2
時間日期函數
time:得到當前時間的時間戳(整型:從格林威治時間1970年1月1日0時0分0秒開始)秒數
date:時間序列化函數,將指定的時間戳轉換成規定時間日期的顯示格式(隨意的字符串:有專業的格式符規定),如果沒有指定時間戳,系統默認使用當前時間的時間戳
strtotime:時間日期格式的字符串轉換成對應的時間戳(只要是正確的英語時間表達方式,都可以進行轉換)
microtime:微秒時間戳,根據不同的要求返回不同的結果 混合 microtime (布爾類型 ),可以返回一個浮點數的時間,也可以返回一個數組(時間戳和微秒數)
數學相關函數
abs:絕對值
floor:向下取整 floor(3.2) 結果等於3
ceil:向上取整
round:四捨五入
rand:取得一個指定範圍內的隨機整數
mt_rand:取得一個指定範圍內的隨機整數(效率更高)
min:PHP 會將非數值的 string 當成 0,但如果這個正是最小的數值則仍然會返回一個字符串。如果多個參數都求值爲 0 且是最小值,min() 會返回按字母表順序最小的字符串,如果其中沒有字符串的話,則返回數值的 0;
max:PHP 會將非數值的字符串當成 0,但如果這個正是最大的數值則仍然會返回一個字符串。如果多個參數都求值爲 0 且是最大值,max() 會返回其中數值的 0,如果參數中沒有數值的 0,則返回按字母表順序最大的字符串。對於多個數組,max從左到右比較;如果同時出現數組和非數組參數總把數組作爲最大值返回;
數組相關函數
count() // 非數組返回1
key:獲取當前數組當前指針所指向的元素的下標
current:獲取的當前指針指向元素的數值
next:獲取下一個元素的值,並且將指針下移
prev:獲取上一個元素的值,並且將指針上移
end :將指針移到數組的最後一個元素,並返回最終指針位置的值
reset:將指針移到數組的第一個元素,返回最終指針位置的值
array_keys:獲取一個數組的所有鍵名,返回一個索引數組
array_values:獲取一個數組的所有值,返回一個索引數組
explode:爆炸,將一個字符串按照某個指定的規則(通常是特殊字符),將數組分成多個段,每一段都當做一個數組的元素,返回一個索引數組
split 類似 explode explode('.', 'abc.txt')等於split('\.','abc.txt')
implode:粘合,將一個數組內部的所有元素按照某個指定的規則(特殊字符),將所有的元素拼接成一個字符串
join() 把數組元素組合爲一個字符串
array_merge:合併,指的是將兩個數組中的元素進行累計。如果後面的數組與前面的數組有下標(鍵名:關聯)相同的,那麼後面的元素的值會覆蓋前面的;如果是索引的相同下標,會自動的修改下標疊加到前面的數組裏。
array_reverse — 返回反轉後的數組
array_flip — 交換數組中的鍵和值
數據結構模擬函數
array_shift:從數組的前面彈出元素,得到元素的值
array_pop:從數組的後面彈出元素,獲得元素的值
array_unshift:從數組的前面壓入元素,得到當前數組元素的個數
array_push:從數組的後面壓入元素,得到當前數組元素的個數
判斷變量
is_bool:判斷是否是布爾類型
is_float:判斷浮點型
is_integer:判斷整型
is_object:判斷對象
is_array:判斷數組
is_string:判斷字符串
is_resource:判斷資源
is_scalar:scalar是標量的,判斷是基本數據類型:整型,浮點型,布爾型和字符串型
is_null 檢測變量是否爲NULL 是返回TRUE 否則返回false。1.被賦值爲NULL;2.變量沒被賦值;3.被unset()
is_numeric:判斷數字或者純數字組成的字符串
gettype:獲得數據類型
settype:改變數據類型
isset
unset() 如果在函數中 unset() 一個全局變量,則只是局部變量被銷燬,而在調用環境中的變量將保持調用 unset() 之前一樣的值,如果在函數中 unset() 一個通過引用傳遞的變量,則只是局部變量被銷燬,而在調用環境中的變量將保持調用 unset() 之前一樣的值。empty//array(),"",0,"0",NULL,FALSE 都返回true
文件操作函數
opendir(路徑):打開一個路徑資源(將路徑內部的所有數據讀入到內存)
readdir(路徑資源):從文件夾資源中讀取當前資源指針所指向的文件的名字,指針會向下移動一位
closedir(資源):釋放對應的文件資源
scandir(路徑):讀取一個路徑內部的所有文件名,返回一個數組,數組的每一個元素都是文件名。
file_exists:判斷一個文件是否存在(文件是廣義:路徑和文件)
is_dir:判斷一個指定路徑是否存在(文件夾)
is_file:判斷一個指定路徑是否是文件(文件)
mkdir:創建一個路徑,如果路徑存在就會報錯
rmdir:移除文件夾
file_get_contents:從一個指定的文件內讀取數據內容。
file_put_contents:將指定的字符串寫入到對應的文件
fopen:打開一個文件資源
fgetc:c代表character,一次讀取一個字符
fgets:s代表string,代表可以讀取多個字符,取決於指定的讀取長度或者是否碰到換行(最多隻能讀取一行數據)
兩個函數都是對當前資源指針進行操作,讀取之後都會將指針下移
fread:獲取指定長度的數據直到文件結束
fwrite:向文件資源指針所在的位置寫入數據,寫東西不會將當前位置已有的東西往後移,而是會覆蓋
fseek:將指針指定到對應的位置
fclose:使用對應的文件資源
copy:複製
unlink:刪除文件
rename:重命名文件
filemtime:m代表modify,文件最後被修改的時間
filesize:文件大小(字節)
fileperms:文件權限(Linux下的八進制)
排序
rsort() 函數用於對數組單元從高到低進行排序。asort() 函數用於對數組單元從低到高進行排序並保持索引關係。arsort() 函數用於對數組單元從高到低進行排序並保持索引關係。ksort() 函數用於對數組單元按照鍵名從低到高進行排序。krsort() 函數用於對數組單元按照鍵名從高到低進行排序。
報錯
error_reporting(E_ALL)
ini_set('display_errors', 1)
常量
define() 定義常量defined() 檢測常量是否定義
序列化
serialize
unserialize
json_encode 對變量進行 JSON 編碼
json_decode 對JSON 格式的字符串進行編碼
編碼
base64_encode 本函數將字符串以 MIME BASE64 編碼。在 BASE64 編碼後的字符串只包含英文字母大小寫、阿拉伯數字、加號與反斜線,共 64 個基本字符,不包含其它特殊的字符,因而才取名 BASE64。
base64_decode 解碼
---------------------
作者:笑對丶人生
來源:CSDN
原文:https://blog.csdn.net/qq_35458793/article/details/80651773
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!