php常用函數有必要背嗎
沒有必要背。php常用的函數不多,都是短單詞的組合。用的久了就自然記住了,實在難記的可以通過以下表格進行查詢。
一、PHP系統函數
函數 | 功能 | 用法 |
var_dump() | 列印變數結構資訊,包括型別和值。陣列將遞迴展開值 | var_dump ( |
echo():是語法結構 | 輸出一個或者多個字串,可不用(),用單引號或者雙引號括起來。變數直接輸出, | echo $arg1,$arg2...; |
isset() | 檢測變數是否設定並且值不為null時返回ture,反之false | isset($args) |
empty() | 檢測變數是否為空 | empty($args) |
exit() | 輸出一條資訊同時退出當前版本 | exit('退出成功') |
die() | 輸出一條資訊同時停止程式碼向下執行 | die(‘程式碼已停止’) |
iconv() | 字元集按照指定編碼轉換 | iconv(incharset,outcharset,$str) |
uniqid() | 獲取一個唯一id(無引數)或者獲取一個帶字首、基於當前時間微秒數的唯一ID(看引數)。 | uniqid([字首名],[true]) |
gettype() | 獲取資料型別 | gettype($args) |
settype() | 把變數$arg設定為某資料型別 | settype($args,"[int][string]...") |
serialize() | 把$arg序列化,即轉換成文字儲存或者傳輸,且不丟失其型別和結構 | serialize(mixed $arg) |
unserialize() | 把$str反序列化,返回序列化之前的型別和格式資訊 | unserialize($str) |
getcwd() | 獲取當前執行指令碼的目錄 | getcwd() |
basename() | 返回路徑的中文部分 | basename($url) |
preg_match() | 用$string去匹配正規表示式,把匹配的結果用$res返回匹配1或者不匹配0 | preg_match($string,正規表示式,$res) |
二、進位制轉換函數
函數 | 功能 | 用法 |
decbin() | 十進位制 ——> 二進位制 | decbin($num) |
decoct() | 十進位制 ——> 八進位制 | decoct($num) |
dechex() | 十進位制 ——> 十六進位制 | dechex($num) |
bindec() | 二進位制 ——> 十進位制 | bindec($num) |
octdec() | 八進位制 ——> 十進位制 | octdec($num) |
hexdec() | 十六進位制 ——> 十進位制 | hexdec($num) |
base_convert() | 任意進位制轉換 | base_convert(轉換的數值, 該數值的進位制,要轉換成的進位制) |
各進位制的英文:
二進位制:binary 十進位制:decimal
八進位制:octect 十六進位制:hexadecimal
三、常數函數
函數 | 功能 | 用法 |
define() | 定義常數,第三個引數選擇是否對大小寫敏感。 | define(常數名,常數值,【true】) |
defined() | 判斷某常數是否存在 | define(常數名) |
get_defined_constants() | 獲取預定義常數 | get_defined_constant() |
四、判斷函數
函數 | 功能 | 用法 |
is_bool() | 判斷是否為布林型別 | is_bool() |
is_int() | 判斷是否為整形 | is_int() |
is_string() | 判斷是否為字串 | is_string() |
is_float() | 判斷是否為浮點型 | is_float() |
is_numeric() | 判斷是否為數位或者數位字串 | is_numeric() |
is_null() | 判斷是否為空 | is_null() |
is_array() | 判斷是否為陣列 | is_array() |
is_dir() | 判斷是否為路徑 | id_dir() |
五、字串函數
函數 | 功能 | 用法 |
strstr()為strchr()的別名 | 返回 且區分大小寫,不想區分大小寫請用:stristr() | strstr ( $str , |
strpos() | 獲取$str中$needle第一次出現的位置(下標),沒有返回false | strpos($str,$needle) |
strrpos() | 獲取$str中$needle最後一次出現的位置(下標),沒有返回false | strrpos($str,$needle) |
substr() | 擷取字串$str從$start位置到$length個的字串 | substr($str,$start,$length) |
implode() | 用,把陣列連線成字串 | implode(',',$arr) |
explode() | 用,把字串分割成陣列 | explode(',',$str) |
str_split() | 把字串$str分割成陣列,每單位長度為5 | str_split($str,5) |
str_replace() | 把字串$str中的a用b替換 | str_replace(a,b,$str) |
strtolower() | 字串轉換成小寫的 | strtolower($str) |
strtoupper() | 字串轉換為大寫 | strtoupper($str) |
ucfirst() | 把字串$str第一個字元轉換成大寫 | ucfirst($str) |
unwords() | 把字串中$str每個單詞轉換成首字母大寫 | unwords($str) |
trim() | 去除字串兩端的空白字元和其他字元 | trim($str) |
rtrim() | 去除字串右側的空白字元和其他字元 | rtrim($str) |
strlen() | 獲取字串長度 | strlen($str) |
substr_count() | 統計字串$str中一個字串$a出現的次數 | substr_count($str,"$a") |
str_repeat() | 重複輸出$str,次數為$num | str_repeat($str,$num) |
strpad() | 在$str的左側用0填充使其長度為$length | strpad($str,$length,"0",STR_PAD_LEFT) |
strrev() | 翻轉字串順序 | strrev($str) |
rand() | 取m-n之間的隨機整數 | rand(m,n) |
mt_rand() | 取m-n之間的隨機整數,獲取速度比mt_rand()快 | mt_rand(m,n) |
pow() | 取m的n次方 | pow(m,n) |
number_format() | 以千位分隔符方式格式化一個數位 | number_format($n) |
六、陣列函數
函數 | 作用 | 用法 |
unset() | 銷毀指定的變數 | unset($arr)/unset($arr[n]) |
array_values() | 獲取陣列中所有的值且重新建立數位下標 | array_values($arr) |
array_keys() | 獲取陣列中所有鍵值 | array_keys($arr) |
is_array() | 判斷是否為陣列 | is_array($arr) |
in_array() | 判斷陣列$arr是否包含某個元素$str | in_array($str,$arr) |
count() | 統計陣列長度/統計多維陣列長度 | count($arr)/count($arr,1) |
range() | 建立一個1-9的陣列 | rang(1,9)、range(a-z) |
array_merge() | 連線多個陣列為一個陣列 | array_merge($arr,$brr…) |
array_rand() | 在陣列中隨機抽取n個單元,返回鍵值,成為新的陣列 | array_rand($arr,n) |
shuffle() | 打亂陣列順序 | shuffle($arr) |
each() | 返回陣列中當前元素的 鍵/值對 並將陣列指標自動向前移動一步 | each($arr) |
list():語言結構 | 把陣列中的值賦給一些變數 | list($a,$b,$c)=$arr |
array_unshift() | 在陣列開頭插入一個或多個單元 | array_unshift($arr,$v1,$v2...) |
array_push() | 在陣列最後插入一個或多個單元 | array_push($arr,$v1,$v2…) |
array_pop() | 將陣列的最後一個元素移除並返回 | array_pop($arr) |
array_key_exist() | 判斷陣列中是否存在鍵$k | array_key_exist($k,$arr) |
array_search() | 在陣列中搜尋給定的值$v,如果成功則返回相應的鍵名 | array_search($v,$arr) |
array_flip() | 交換陣列的鍵和值 | array_flip($arr) |
array_count_values() | 統計陣列中所有值出現的次數 | array_count_values($arr) |
array_unique() | 移除陣列中重複的值 | array_unique($arr) |
sort() | 將陣列按照值的大小升序排列 | sort($arr) |
asort() | 將陣列按照值的大小升序排列且保持索引關係 | asort($arr) |
rsort() | 將陣列按照值的大小降序排列,重排索引 | rsort($arr) |
arsort | 將陣列按照值的大小降序排列,保持索引 | arsort($arr) |
natsort() | 自然排序(符合人們日常使用的習慣) | natsort($arr) |
ksort() | 將陣列按照鍵的大小降序排列,保留鍵名到資料的關聯 | ksort($arr) |
krsort() | 將陣列按照鍵的大小降序排列,保留鍵名到資料的關聯 | krsort($arr) |
array_sum() | 對陣列中所有的值求和 | array_sum($arr) |
key() | 獲取陣列中遍歷指標的位置(鍵) | key($arr) |
current() | 獲取指標所在位置的值 | current($arr) |
next() | 將陣列中指標後移一個位置 | next($arr) |
prev() | 將陣列中指標前移一個位置 | prev($arr) |
reset() | 重置陣列中指標位置(指向第一個位置) | reset($arr) |
end() | 將陣列中指標移到最後一個位置 | end($arr) |
七、時間函數
函數 | 作用 | 用法 |
time() | 獲取當前時間戳 | time() |
mktime() | 獲取指定時間的時間戳 | mktime (小時, 分鐘, 秒 ,月 ,日, 年 ) |
date() | 將時間$tmp指定格式輸出 | date('Y-m-d H:i:s',$tmp) |
strtotime() | 將任何英文文字的日期時間描述解析為 Unix 時間戳 | strtotime("now") |
八、資料庫函數
函數 | 功能 | 作用 |
mysql_connect() | 連結mysql資料庫 | mysql_connect($host,$user,$pwd) |
mysql_query() | 傳送一條 MySQL 語句 | mysql_query(sql語句) |
mysql_fetch_assoc() | 在結果集中取出一行資料組成關聯陣列並返回,並且繼續移動內部資料指標 | mysql_fetch_assoc($result) |
mysql_fetch_array() | 在結果集中取出一行資料組成陣列並返回,並且繼續移動內部資料指標 | mysql_fetch_array($result,引數) |
mysql_fetch_row() | 在結果集中取出一行資料組成索引陣列並返回,並且繼續移動內部資料指標 | mysql_fetch_row($result) |
mysql_select_db() | 選擇資料庫 | mysql_select_db(資料庫名) |
mysql_num_rows() | 獲取查詢結果記錄數 | mysql_num_rows(查詢結果) |
九、檔案操作函數
fopen() | 開啟檔案或者URL | fopen(「filename」,「mode」) |
fwrite() | 在檔案中寫入內容 | fwrite("filename","內容") |
fclose() | 關閉檔案或URL | fclose("filename") |
file_put_contents() | 一步寫入內容 | file_put_contents("filename","內容") |
file_get_contents() | 一步讀取內容 | file_get_contents("filename","內容") |
fread() | 讀取指定長度檔案內容 | fread("filename",位元組數) |
filesize() | 獲取檔案內容長度(位元組數) | filesize("filename") |
fgets() | 讀取一行 | fgets($handle,length) |
file() | 把整個檔案讀入一個陣列中 | file("filename") |
copy() | 拷貝檔案,新檔名為"newfile" | copy("filename","newfile") |
unlink() | 刪除檔案 | unlink($filename) |
filectime() | 獲取檔案建立時間 | filectime($filename) |
fileatime() | 獲取檔案上次存取時間 | fileatime($filename) |
filemtime() | 獲取檔案修改時間 | filemtime($filename) |
feof() | 判斷指標是否到達檔案末尾 | feof($filename) |
json_encode() | 把資料編譯成JSON資料 | json_encode($a) |
json_decode() | 把JSON資料反編碼為PHP資料變數 引數為true時,返回array | json_decode($j,[false]/true) |
十、目錄操作函數
函數 | 功能 | 用法 |
mkdir() | 建立目錄,有0777是否遞回建立 | mkdir("/path/to/my/dir", 0777); |
rmdir() | 刪除目錄 | rmdir($DIR) |
opendir() | 開啟目錄控制代碼 | opendir($dir) |
readdir() | 讀取目錄 | readdir($dir) |
closedir() | 關閉目錄 | closedir($dir) |
rewinddir() | 重置目錄資源 | rewinddir($dir) |
file_exists() | 判斷檔案/目錄是否存在 | file_exists($filename/$dir) |
rename() | 對檔案/目錄重新命名 | rename($filename/$dir,$newname) |
dirname() | dirname($path) | 返回路徑中的目錄部分 |
basename() | 返回路徑中的檔名部分 | basename($path) |
pathinfo() | 獲取路徑資訊 | pathinfo($path,[options]) |
十一、類函數
函數 | 功能 | 作用 |
class_exists() | 判斷類是否存在 | class_exists($classname) |
interface_exists() | 判斷介面是否存在 | interface_exists($name) |
method_exists() | 判斷方法是否存在 | method_exists($name) |
property_exists() | 判斷屬性是否存在 | property($name) |
get_class() | 獲取類名稱 | get_class() |
get_parent_class() | 獲取父類別名稱 | get_parent_class() |
get_class_methods() | 獲取類中的方法 | get_class_methods() |
get_class_vars() | 返回由類的預設屬性組成的陣列 | get_class_vars() |
get_declared_class() | 獲取已定義的類的名稱 | get_declared_class() |
__toString() | 將物件當字串對待時呼叫 | __toString() |
__construct() | New物件時自動呼叫 | __construct() |
__destruct() | 銷毀物件時自動呼叫 | __destruct() |
__clone() | 克隆物件時自動呼叫 | __clone() |
__invoke() | 把物件當做函數呼叫時自動呼叫 | __invoke() |
__set() | 給不可存取的成員屬性賦值時自動呼叫 | __set() |
__get() | 讀取不可讀取的成員屬性的值時自動呼叫 | __get() |
__isset() | 對不可存取的成員屬性使用isset()或者empty()時自動呼叫 | __isset() |
__unset() | 對不可存取的成員屬性使用unset()時自動調 | __unset() |
class_alias() | 為類建立一個別名 | class_alias(原類,類別名) |
get_object_vars() | 返回一個包含object可用的已定義屬性和值的關聯陣列 | get_object_vars() |
is_a() | 如果物件屬於該類或該類是此物件的父類別則返回 TRUE | is_a($obj,$classname) |
is_subclass_of() | 如果物件 object 所屬類是類 class_name 的子類,則返回 TRUE,否則返回 FALSE。 | is_subclass_of($obj,$classname) |
以上就是php常用函數有必要背嗎的詳細內容,更多請關注TW511.COM其它相關文章!