PHP:150个内置函数简单整合

共计整理150个函数

一、数学函数

11个

函数说明举例结果
abs绝对值abs(45), abs(-45)45, 45
ceil向上取整ceil(5.5)6
floor向下取整floor(5.5)5
fmod浮点数取余fmod(5, 3)2
pown次方运算pow(2, 3)8
round四舍五入round(4.55555, 2)4.56
sqrt求平方根sqrt(9)3
max最大值max(1, 2, 3), max(array(1, 2, 3))3, 3
min最小值min(1, 2, 3), min(array(2, 3, 4))1, 1
rand随机数rand(1, 4), mt_rand(1, 4)4, 1
pi圆周率值pi()3.1415926535898

二、字符串函数

57个

1、字符串处理

13个

函数说明举例结果
trim修剪两边trim("\thello\t")hello
ltrim修剪左边ltrim("\thello\t")hello\t
rtrim修剪右边rtrim("\thello\t")\thello
str_pad字符串填充str_pad(“hello”, 10, “*”)hello*****
str_repeat重复字符串str_repeat(“hello”, 2)hellohello
strrev反转字符串strrev(“hello”)olleh
str_shuffle打乱字符串str_shuffle(“hello”)lheol
number_format格式化数字number_format(100000.897, 2, “.”, “-”)100-000.90
strtolower字符串转为小写strtolower(“Hello”)hello
strtoupper字符串转为大写strtoupper(“hello”)HELLO
ucfirst字符串首字母大写ucfirst(“hello world”)Hello world
ucwords字符串所有首字符大写ucwords(“hello world”)Hello World
wordwrap字符串折行wordwrap(“hello world”, 5)hello\nworld

2、字符串网页相关

10个

函数说明举例结果
parse_str字符串解析成变量parse_str(“id=23&name=Tom”, $list)Array([id] => 23 [name] => Tom)
htmlentities字符转为HTML实体htmlentities(“hello&”)hello&
htmlspecialchars预定义字符转html编码htmlspecialchars(“hello&”)hello&
nl2br\n转义为
标签
nl2br(“hello\nworld”)hello
\nworld
strip_tags剥去 HTML、XML 以及 PHP 的标签strip_tags(“Hello world!”)Hello world!
addcslashes指定字符前添加反斜线addcslashes(“Hello number”, “n”)Hello \number
stripcslashes删除反斜线stripcslashes(“Hello \nu\mber”)Hello \number
addslashes预定义字符前添加反斜线addslashes(“Hello’ number”)Hello’ number
stripslashes删除预定义字符前的转义字符stripslashes(“Hello’ number”)Hello’ number
quotemeta预定义的字符前添加反斜线quotemeta(“Hello world.”)Hello world.
rawurldecode解码URL编码的字符串rawurldecode(‘my%20name’)my name
rawurlencode字符串进行URL编码rawurlencode(‘my name’)my%20name

3、字符串比较

8个

函数说明举例结果
chrASCII 值返回字符chr(65)A
ord字符串第一个字符的ASCII值ord(“hello”)104
strcasecmp不区分大小写比较两字符串strcasecmp(“Hello”, “HELLO”)0
strcmp区分大小写比较两字符串strcmp(“Hello”, “HELLO”)32
strncmp比较字符串前n个字符,区分大小写strncmp(“Hello”, “HELLO”, 3)32
strncasecmp比较字符串前n个字符,不区分大小写strncasecmp(“Hello”, “HELLO”, 3)0
strnatcmp自然顺序法比较字符串长度,区分大小写(“Hello”, “HELLO”)1
strnatcasecmp自然顺序法比较字符串长度, 不区分大小写strnatcasecmp(“Hello”, “HELLO”)0

4、字符串切割与拼接

6个

函数说明举例结果
chunk_split将字符串分成小块chunk_split(“hello world”, 3)hel lo wor ld
strtok切开字符串strtok(“hello world”, " ")hello
explode字符串分割explode(" ", “hello world”)Array([0] => hello [1] => world)
str_split字符串分割str_split(“hello”)Array([0] => h [1] => e…)
implode将数组值连接成字符串implode("+", array(“hello”, “world”))hello+world
substr截取字符串substr(“hello”, 1, 3)ell

5、字符串查找替换

15个

函数说明举例结果
str_replace字符串替换,区分大小写str_replace(“h”, “xx”, “hello”)xxello
str_ireplace字符串替换,不区分大小写str_ireplace(“h”, “xx”, “hello”)xxello
substr_replace字符串替换substr_replace(“hello, hello”, “x”, 1, 6)hxhello
similar_text两字符串相同字符的数量similar_text(“hello”, “Hello”)5
strstr字符串开始位置到结束的字符串strstr(“HELLO hello”, “l”)llo
strchrstrstr()的别名strchr(“HELLO hello”, “l”)llo
stristr字符串开始位置到结束的字符串,不区分大小写stristr(“HELLO, hello”, “l”)LLO, hello
strrchr字符串最后一次出现位置开始到末尾的字符串strrchr(“hello”, “l”)lo
strtr转换字符串中的某些字符strtr(“hello”, “ll”, “xx”)hexxo
strpos字符最先出现的位置strpos(“HELLO, hello”, “l”)9
stripos字符最先出现的位置,不区分大小写stripos(“HELLO, hello”, “l”)2
strrpos字符最后出现的位置strrpos(“hello,HELLO”, “l”)3
strripos字符最后出现的位置,不区分大小写strripos(“hello, HELLO”, “l”)10
strspn字符串中首次符合mask的长度strspn(“www.baidu.com”, “ad”)0
strcspn字符串中不符合mask的长度strcspn(“www.baidu.com”, “ad”)5

6、字符串统计

4个

函数说明举例结果
substr_count统计字符串出现次数substr_count(“hello”, “l”)2
str_word_count统计含有的单词数str_word_count(“hello world”)2
strlen统计字符串长度strlen(“hello world”)11
count_chars统计字母次数count_chars(“hello”))Array([0] => 0 [1] => 0… [255] => 0)

7、字符串其他函数

1个

函数说明举例结果
md5字符串md5编码md5(“hello”)5d41402abc4b2a76b9719d911017c592

三、数组函数

33个

1、数组创建

5个

函数说明举例结果
array数组创建array(“Dog”, “Cat”)Array([0]=>Dog [1]=>Cat)
array_combine两个数组zip生成一个数组array_combine(array(“a”), array(“Cat”))Array([a]=>Cat)
range定范围的数组range(0, 4, 2)Array([0]=>0 [1]=>2 [2]=>4)
compact创建数组,变量名为键,变量值为值$name= “Tom”; $age = “38”;compact(“name”, “age”)Array([name]=>Tom [age]=>38)
array_fill填充值生成数组array_fill(2, 1, “Dog”)Array([1]=>Dog)

2、数组合并和拆分

5个

函数说明举例结果
array_chunk重组数组块$a=array("a"=>"Cat", "b"=>"Dog"); array_chunk($a, 1)Array([0] => Array([0] => Cat) [1]=>Array([0]=>Dog))
array_merge合并array_merge(array("a"=>"Dog"), array("b"=>"Cat"))Array([a]=>Dog [b]=>Cat)
array_slice切片array_slice(array(0=>"Dog",1=>"Cat"), 1, 1)Array([0] => Dog)
array_diff差集array_diff(array(0=>"Cat",1=>"Dog"), array(0=>"Dog"))Array([0]=>Cat)
array_intersect交集array_intersect(array(0=>"Cat"), array(1=>"Dog"))Array([1]=>Cat [2]=>Dog)

3、数组查找替换

5个

函数说明举例结果
array_search查找值,返回键,没有返回假array_search(“Dog”, array(“a”=>“Dog”))a
array_splice数组替代array(0=>“Dog”, 1=>“Cat”), 0, 1, array(0=>“Tiger”)array(0=>“Tiger”)
array_sum求和array_sum(array(0=>5, 1=>10))15
in_array查找值 ,区分大小写in_array(“Tom”, array(“Tom”, “Jack”))1
array_key_exists查找键array_key_exists(“b”, array(“b”=>“Cat”))1

4、数组元素操作

10个

函数说明举例结果
key指针当前指向的键名key(array(“a”=>“Dog”,“b”=>“Cat”))a
current当前元素current(array(“a”=>“Dog”,“b”=>“Cat”))Dog
next下一元素next(array(“a”=>“Dog”,“b”=>“Cat”))Cat
prev上一元素prev(array(“a”=>“Dog”,“b”=>“Cat”)) Dog
end指向最后一个元素end(array(“a”=>“Dog”,“b”=>“Cat”))Cat
reset指向第一个元素reset(array(“a”=>“Dog”,“b”=>“Cat”))Dog
list序列解包list( a , a, a,b)=array(“Dog”,“Cat”)$a=“Dog”; $b=“Cat”
array_shift返回删除的第一个元素array_shift(array(“Dog”,“Cat”))Dog
array_unshift开头插入元素array_unshift(&array(),“Dog”)Array([0]=>“Dog”)
array_push最后压入元素array_push(&array(), “Dog”)Array([0]=>“Dog”)
array_pop弹出最后一个元素array_pop(&array(), “Dog”)Dog
shuffle数组打乱,保留键名shuffle(array(“a”=> “Dog”))Array(“a”=> “Dog”)
count计算个数count(array(“Tom”))1
array_flip键值反转array_flip(array(“Tom”, “Jack”))Array([Tom]=>0 [Jack]=>1)
array_keys返回所有键array_keys(array(“Tom”, “Jack”))Array([0]=>0 [1]=>1)
array_values返回所有值array_values(array(“Tom”, “Jack”))Array([0]=>Tom [1]=>Jack)
array_reverse元素顺序反转array_reverse(array(“Tom”, “Jack”))Array([0]=>Jack [1]=>Tom)
array_count_values统计值次数array_count_values(array(“Tom”, “Jack”))Array([Tom]=>1 [Jack]=>1)
array_rand随机取出键array_rand(array(“Tom”, “Jack”))1
array_unique删除重复值,返回剩余数组array_unique(array(“Tom”, “Jack”))Array(“Tom”, “Jack”)

5、数组排序

8个

函数说明举例结果
sort升序值排序,不保留键名sort(array(“Dog”=>“Tom”, “Cat”=>“Jack”))Array([0]=>Jack [1]=>Tom)
rsort逆向排序,不保留键名rsort(array(“Dog”=>“Tom”, “Cat”=>“Jack”))Array([0]=>Tom [1]=>Jack)
asort升序排序,保持索引关系asort(array(“Dog”=>“Tom”, “Cat”=>“Jack”))Array([Cat]=>Jack [Dog]=>Tom)
arsort对数组逆向排序,保持索引关系arsort(array(“Dog”=>“Tom”, “Cat”=>“Jack”))Array([Dog]=>Tom [Cat]=>Jack)
ksort键名排序ksort(array(“Dog”=>“Tom”, “Cat”=>“Jack”))Array([Cat]=>Jack [Dog]=>Tom)
krsort逆向排序krsort(array(“Dog”=>“Tom”, “Cat”=>“Jack”))Array([Dog]=>Tom [Cat]=>Jack)
natsort自然顺序排序natsort(array(“Dog”=>“Tom”, “Cat”=>“Jack”))Array([Cat]=>Jack [Dog]=>Tom)
natcasesort自然排序,不区分大小写natcasesort(array(“Dog”=>“Tom”, “Cat”=>“Jack”))Array([Cat]=>Jack [Dog]=>Tom)

四、文件系统函数

39个

1、文件属性

9个

函数说明举例结果
file_exists检查文件或目录是否存在file_exists(“demo.txt”)1
filesize文件大小bytefilesize(“demo.txt”)18
is_readable文件是否可读is_readable(“demo.txt”)1
is_writable文件是否可写is_writable(“demo.txt”)1
is_executable文件是否可执行is_executable(“demo.txt”)1
filectime文件创建时间filectime(“demo.txt”)1552228956
filemtime文件的修改时间filemtime(“demo.txt”)1552228956
fileatime上次访问时间fileatime(“demo.txt”)1552228956
stat文件属性stat(“demo.txt”)Array

2、文件操作

16个

函数说明举例结果
fopen打开文件或者 URLfopen(“demo.txt”, “r”)$handle
fclose关闭文件指针fclose($handle)true/false
fwrite写入文件fwrite($handle, $data)-
fputs写入文件(同上)--
feof文件指针是否到了文件结束的位置feof($handle)1
fgets从文件指针中读取一行fgets($handle)$line
fgetc从文件指针中读取字符fgetc($handle)$char
file读入整个文件到数组file(“demo.txt”)$lines
readfile读入一行readfile(“demo.txt”)$line
file_get_contents整个文件读入一个字符串file_get_contents(“demo.txt”)$content
file_put_contents将字符串写入文件file_put_contents(“demo.txt”, $data)-
ftell返回文件指针读/写的位置
fseek在文件指针中定位
rewind倒回文件指针的位置
flock轻便的执行文件锁定
fread读取字符fread($handle, 3)$chars

3、目录

12个

函数说明举例结果
basename返回文件名basename(“root/demo.txt”)demo.txt
dirname返回目录dirname(“root/demo.txt”)root
pathinfo文件信息pathinfo(“root/demo.txt”)Array([dirname] => root [basename] => demo.txt [extension] => txt [filename] => demo)
opendir打开目录句柄opendir(’/’)$dir_handle
readdir从目录句柄中读取条目readdir($dir_handle)
closedir关闭目录句柄closedir($dir_handle)
rewinddir目录流重置到目录的开头rewinddir($dir_handle)
mkdir新建目录
rmdir删除目录
unlink删除文件
copy拷贝文件
rename重命名一个文件或目录

4、文件的上传与下载

2个

函数说明举例结果
is_uploaded_file判断文件是否是通过 HTTP POST上传的
move_uploaded_file将上传的文件移动到新位置

五、时间

9个

函数说明举例结果
time时间戳time()1552231653
mktime取得时间戳mktime(0, 0, 0, 4, 25, 2012)1335283200
date时间格式化date(‘Y年m月d日 H:i:s’)2019年03月10日 23:28:12
checkdate验证一个格里高里日期
date_default_timezone_set设定默认时区
getdate取得日期/时间信息getdate()Array
strtotime将任何英文文本的日期时间描述解析为 Unix 时间戳strtotime(“last Monday”)1551628800
microtime返回当前 Unix 时间戳和微秒数microtime()0.64341300 1552232106
sleep休息sleep(3)-

六、其他函数

3个

函数说明举例结果
intval获取变量的整数值intval(“1111”, 2); intval(“20”)15 ; 20
isset检测变量是否设置isset($hi)false
empty检查一个变量是否为空empty($hi)true
json_encode对变量进行JSON编码json_encode([‘name’=>‘Tom’]){“name”:“Tom”}
json_decodeJSON解码返回对象json_decode(’{“name”:“Tom”}’))object(stdClass){[“name”]=>“Tom”}
json_decodeJSON解码返回数组json_decode(’{“name”:“Tom”}’, true)array(1) {[“name”]=>“Tom”}

参考:
Php 常用内置函数总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值