2020-05-10

php常用的系統(tǒng)函數(shù)

字符串函數(shù)

strlen:獲取字符串長度徘跪,字節(jié)長度

substr_count 某字符串出現(xiàn)的次數(shù)

substr:字符串截取司光,獲取字符串(按照字節(jié)進(jìn)行截榷链妗)

mb_strlenmb_substr

strchr:與substr相似涛救,從指定位置截取一直到最后

strrchr(獲取文件后綴名):與strchr一樣毁枯,只是從右邊開始查找字符

strtolower:所有的字符都小寫(針對英文字母)

strtoupper:所有的字符都大寫

strrev:字符串反轉(zhuǎn)(只能反轉(zhuǎn)英文:英文存儲只有一個(gè)字節(jié)),按照字節(jié)進(jìn)行反轉(zhuǎn)

strpos:從字符串中找對應(yīng)字符出現(xiàn)的位置(數(shù)字下標(biāo))袱衷,從最左邊開始找

strrpos:與strpos一樣捎废,只是從字符串的右邊開始找

trim:去掉函數(shù)兩邊的字符,默認(rèn)是空格

str_split 函數(shù)把字符串分割到數(shù)組中致燥。

chunk_split() 函數(shù)把字符串分割為一連串更小的部分

str_repeat("Shanghai",5);把字符串 "Shanghai " 重復(fù) 5 次

str_replace('\', '/', dirname(DIR))); 替換

ucfirst 首字母大寫

時(shí)間日期函數(shù)

time:得到當(dāng)前時(shí)間的時(shí)間戳(整型:從格林威治時(shí)間1970年1月1日0時(shí)0分0秒開始)秒數(shù)

date:時(shí)間序列化函數(shù)登疗,將指定的時(shí)間戳轉(zhuǎn)換成規(guī)定時(shí)間日期的顯示格式(隨意的字符串:有專業(yè)的格式符規(guī)定),如果沒有指定時(shí)間戳嫌蚤,系統(tǒng)默認(rèn)使用當(dāng)前時(shí)間的時(shí)間戳

strtotime:時(shí)間日期格式的字符串轉(zhuǎn)換成對應(yīng)的時(shí)間戳(只要是正確的英語時(shí)間表達(dá)方式辐益,都可以進(jìn)行轉(zhuǎn)換)

microtime:微秒時(shí)間戳,根據(jù)不同的要求返回不同的結(jié)果 混合 microtime (布爾類型 )脱吱,可以返回一個(gè)浮點(diǎn)數(shù)的時(shí)間智政,也可以返回一個(gè)數(shù)組(時(shí)間戳和微秒數(shù))

數(shù)學(xué)相關(guān)函數(shù)

abs:絕對值

floor:向下取整 floor(3.2) 結(jié)果等于3

ceil:向上取整

round:四舍五入

rand:取得一個(gè)指定范圍內(nèi)的隨機(jī)整數(shù)

mt_rand:取得一個(gè)指定范圍內(nèi)的隨機(jī)整數(shù)(效率更高)

min:PHP 會(huì)將非數(shù)值的 string 當(dāng)成 0,但如果這個(gè)正是最小的數(shù)值則仍然會(huì)返回一個(gè)字符串箱蝠。如果多個(gè)參數(shù)都求值為 0 且是最小值续捂,min() 會(huì)返回按字母表順序最小的字符串垦垂,如果其中沒有字符串的話,則返回?cái)?shù)值的 0;

max:PHP 會(huì)將非數(shù)值的字符串當(dāng)成 0牙瓢,但如果這個(gè)正是最大的數(shù)值則仍然會(huì)返回一個(gè)字符串劫拗。如果多個(gè)參數(shù)都求值為 0 且是最大值,max() 會(huì)返回其中數(shù)值的 0一罩,如果參數(shù)中沒有數(shù)值的 0杨幼,則返回按字母表順序最大的字符串。對于多個(gè)數(shù)組,max從左到右比較;如果同時(shí)出現(xiàn)數(shù)組和非數(shù)組參數(shù)總把數(shù)組作為最大值返回;

數(shù)組相關(guān)函數(shù)

count() // 非數(shù)組返回1

key:獲取當(dāng)前數(shù)組當(dāng)前指針?biāo)赶虻脑氐南聵?biāo)

current:獲取的當(dāng)前指針指向元素的數(shù)值

next:獲取下一個(gè)元素的值聂渊,并且將指針下移

prev:獲取上一個(gè)元素的值,并且將指針上移

end :將指針移到數(shù)組的最后一個(gè)元素四瘫,并返回最終指針位置的值

reset:將指針移到數(shù)組的第一個(gè)元素汉嗽,返回最終指針位置的值

array_keys:獲取一個(gè)數(shù)組的所有鍵名,返回一個(gè)索引數(shù)組

array_values:獲取一個(gè)數(shù)組的所有值找蜜,返回一個(gè)索引數(shù)組

explode:爆炸饼暑,將一個(gè)字符串按照某個(gè)指定的規(guī)則(通常是特殊字符),將數(shù)組分成多個(gè)段洗做,每一段都當(dāng)做一個(gè)數(shù)組的元素弓叛,返回一個(gè)索引數(shù)組

split 類似 explode explode('.', 'abc.txt')等于split('.','abc.txt')

implode:粘合,將一個(gè)數(shù)組內(nèi)部的所有元素按照某個(gè)指定的規(guī)則(特殊字符)诚纸,將所有的元素拼接成一個(gè)字符串

join() 把數(shù)組元素組合為一個(gè)字符串

array_merge:合并撰筷,指的是將兩個(gè)數(shù)組中的元素進(jìn)行累計(jì)。如果后面的數(shù)組與前面的數(shù)組有下標(biāo)(鍵名:關(guān)聯(lián))相同的畦徘,那么后面的元素的值會(huì)覆蓋前面的毕籽;如果是索引的相同下標(biāo),會(huì)自動(dòng)的修改下標(biāo)疊加到前面的數(shù)組里井辆。

array_reverse — 返回反轉(zhuǎn)后的數(shù)組

array_flip — 交換數(shù)組中的鍵和值

數(shù)據(jù)結(jié)構(gòu)模擬函數(shù)

array_shift:從數(shù)組的前面彈出元素关筒,得到元素的值

array_pop:從數(shù)組的后面彈出元素,獲得元素的值

array_unshift:從數(shù)組的前面壓入元素杯缺,得到當(dāng)前數(shù)組元素的個(gè)數(shù)

array_push:從數(shù)組的后面壓入元素蒸播,得到當(dāng)前數(shù)組元素的個(gè)數(shù)

判斷變量

is_bool:判斷是否是布爾類型

is_float:判斷浮點(diǎn)型

is_integer:判斷整型

is_object:判斷對象

is_array:判斷數(shù)組

is_string:判斷字符串

is_resource:判斷資源

is_scalar:scalar是標(biāo)量的,判斷是基本數(shù)據(jù)類型:整型萍肆,浮點(diǎn)型袍榆,布爾型和字符串型

is_null 檢測變量是否為NULL 是返回TRUE 否則返回false。1.被賦值為NULL;2.變量沒被賦值;3.被unset()

is_numeric:判斷數(shù)字或者純數(shù)字組成的字符串

gettype:獲得數(shù)據(jù)類型

settype:改變數(shù)據(jù)類型

isset

unset() 如果在函數(shù)中 unset() 一個(gè)全局變量匾鸥,則只是局部變量被銷毀蜡塌,而在調(diào)用環(huán)境中的變量將保持調(diào)用 unset() 之前一樣的值,如果在函數(shù)中 unset() 一個(gè)通過引用傳遞的變量,則只是局部變量被銷毀勿负,而在調(diào)用環(huán)境中的變量將保持調(diào)用 unset() 之前一樣的值馏艾。empty//array(),"",0,"0",NULL,FALSE 都返回true

文件操作函數(shù)

opendir(路徑):打開一個(gè)路徑資源(將路徑內(nèi)部的所有數(shù)據(jù)讀入到內(nèi)存)

readdir(路徑資源):從文件夾資源中讀取當(dāng)前資源指針?biāo)赶虻奈募拿掷筒埽羔槙?huì)向下移動(dòng)一位

closedir(資源):釋放對應(yīng)的文件資源

scandir(路徑):讀取一個(gè)路徑內(nèi)部的所有文件名,返回一個(gè)數(shù)組琅摩,數(shù)組的每一個(gè)元素都是文件名铁孵。

file_exists:判斷一個(gè)文件是否存在(文件是廣義:路徑和文件)

is_dir:判斷一個(gè)指定路徑是否存在(文件夾)

is_file:判斷一個(gè)指定路徑是否是文件(文件)

mkdir:創(chuàng)建一個(gè)路徑,如果路徑存在就會(huì)報(bào)錯(cuò)

rmdir:移除文件夾

file_get_contents:從一個(gè)指定的文件內(nèi)讀取數(shù)據(jù)內(nèi)容房资。

file_put_contents:將指定的字符串寫入到對應(yīng)的文件

fopen:打開一個(gè)文件資源

fgetc:c代表character蜕劝,一次讀取一個(gè)字符

fgets:s代表string,代表可以讀取多個(gè)字符轰异,取決于指定的讀取長度或者是否碰到換行(最多只能讀取一行數(shù)據(jù))

兩個(gè)函數(shù)都是對當(dāng)前資源指針進(jìn)行操作岖沛,讀取之后都會(huì)將指針下移

fread:獲取指定長度的數(shù)據(jù)直到文件結(jié)束

fwrite:向文件資源指針?biāo)诘奈恢脤懭霐?shù)據(jù),寫東西不會(huì)將當(dāng)前位置已有的東西往后移搭独,而是會(huì)覆蓋

fseek:將指針指定到對應(yīng)的位置

fclose:使用對應(yīng)的文件資源

copy:復(fù)制

unlink:刪除文件

rename:重命名文件

filemtime:m代表modify婴削,文件最后被修改的時(shí)間

filesize:文件大小(字節(jié))

fileperms:文件權(quán)限(Linux下的八進(jìn)制)

排序

rsort() 函數(shù)用于對數(shù)組單元從高到低進(jìn)行排序牙肝。asort() 函數(shù)用于對數(shù)組單元從低到高進(jìn)行排序并保持索引關(guān)系唉俗。arsort() 函數(shù)用于對數(shù)組單元從高到低進(jìn)行排序并保持索引關(guān)系。ksort() 函數(shù)用于對數(shù)組單元按照鍵名從低到高進(jìn)行排序配椭。krsort() 函數(shù)用于對數(shù)組單元按照鍵名從高到低進(jìn)行排序虫溜。

報(bào)錯(cuò)

error_reporting(E_ALL)

ini_set('display_errors', 1)

常量

define() 定義常量defined() 檢測常量是否定義

序列化

serialize

unserialize

json_encode 對變量進(jìn)行 JSON 編碼

json_decode 對JSON 格式的字符串進(jìn)行編碼

編碼

base64_encode 編碼

本函數(shù)將字符串以 MIME BASE64 編碼。在 BASE64 編碼后的字符串只包含英文字母大小寫股缸、阿拉伯?dāng)?shù)字衡楞、加號與反斜線,共 64 個(gè)基本字符乓序,不包含其它特殊的字符寺酪,因而才取名 BASE64。

base64_decode 解碼

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末替劈,一起剝皮案震驚了整個(gè)濱河市寄雀,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌陨献,老刑警劉巖盒犹,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異眨业,居然都是意外死亡急膀,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進(jìn)店門龄捡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來卓嫂,“玉大人,你說我怎么就攤上這事聘殖〕况ǎ” “怎么了行瑞?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長餐禁。 經(jīng)常有香客問我血久,道長,這世上最難降的妖魔是什么帮非? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任氧吐,我火速辦了婚禮,結(jié)果婚禮上末盔,老公的妹妹穿的比我還像新娘筑舅。我一直安慰自己,他們只是感情好陨舱,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布豁翎。 她就那樣靜靜地躺著,像睡著了一般隅忿。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上邦尊,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天背桐,我揣著相機(jī)與錄音,去河邊找鬼蝉揍。 笑死链峭,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的又沾。 我是一名探鬼主播弊仪,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼杖刷!你這毒婦竟也來了励饵?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤滑燃,失蹤者是張志新(化名)和其女友劉穎役听,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體表窘,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡典予,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了乐严。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瘤袖。...
    茶點(diǎn)故事閱讀 40,505評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖昂验,靈堂內(nèi)的尸體忽然破棺而出捂敌,到底是詐尸還是另有隱情艾扮,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布黍匾,位于F島的核電站栏渺,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏锐涯。R本人自食惡果不足惜磕诊,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望纹腌。 院中可真熱鬧霎终,春花似錦、人聲如沸升薯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽涎劈。三九已至广凸,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蛛枚,已是汗流浹背谅海。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蹦浦,地道東北人扭吁。 一個(gè)月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像盲镶,于是被迫代替她去往敵國和親侥袜。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評論 2 359