php常用函数

PHP函数

整理下一些函数,方便查阅。

常用业务都是查询出对应的数据,通常都是字符串和数组

然后对其进行操作,返回业务需求所需的数据格式

目录

字符串转数组

explode()

1
2
$str = "Hello world. I love Shanghai!";
print_r(explode(" ", $str));
控制字符串大小写
  • ucfirst() :字符串中的第一个单词首字母大写
  • ucwords() :字符串中的多个单词首字母大写
  • strtolower() :修改整个字符串为小写
  • strtoupper() :修改整个字符串为大写
去除字符串空白符
  • ltrim() :从字符串开头删除空白符
  • rtrim(): 从字符串末尾开始删除空白符
  • trim() : 会删除字符串开头和末尾的空白符。(第二个参数可以指定需要去除的字符)

空白符 : 换行、回车、空格、水平和垂直制表符、以及null…..

文本在指定长度后换行

wordwrap() :默认会每75个字符自动换行

还提供第二个参数指定一个不同的行长度

第三个参数可以使用其他字符换行符

数字处理
  • round($string, $a) :$a 代表小数点后几位,四舍五入
  • ceil() :向上取整,结果为整数
  • floor() :向下取整,结果为整数
  • range($start, $end, $length) :生成指定范围的字符串数组
  • mt_rand() :生成随机数
  • number_format() :格式化数字 千位分隔符
汉字处理
  • mb_strlen() :计算字符串长度 一个汉字也会认为是长度为1 可以指定编码
  • mb_substr() :字符串截取 0第一个字符 -1 最后一个字符 可以指定编码
字符串搜索
  • strpos() :查找字符串在另一字符串中第一次出现的位置,大小写敏感
  • strripos() :查找字符串在另一字符串中最后一次出现的位置,大小写敏感

数组

PHP允许将任何数据类型赋至一个数组元素

每个数组中每个键只能包含一个唯一的值

数组处理完成后,array_unique() 就是删除重复元素的最佳方法

要循环遍历一个数组,并处理其中的所有或部分元素

最容易的方法是使用foreach

foreach() 返回的变量并不是数组中原值的别名

它们是一些副本,如果修改这些值,不会反映到数组中

如果想要在 foreach() 中修改值:

1
2
3
foreach($arr as &$v) {		// 使用引用符,对数组的修改会反映到数组中
......
}

批量赋值:

1
2
3
4
5
6
7
list($a, $b, $c) = $arr    // 等同于  $a = $arr[0]     $b = arr[1]     $c = arr[2]


$a = 'A';
$b = 'B';
$c = 'C';
compact('a', 'b', 'c'); // 等同于 $arr['a'] = 'A', $arr['b'] = 'B'
  • array_keys() :返回数组中所有的键名
  • array_key_exists() :检查给定的键名或索引是否存在于数组中
  • array_values() :返回数组中所有的值,适合用于数组中元素下标混乱的数组或者将关联数组转成索引数组
  • in_array() :检查数组中是否存在某个值(返回布尔值) 默认使用 == 判断 可以在第三个参数加上true使用 ===
  • array_search() : 检查数组中是否存在某个值,返回键值
操作数组
  • array_flip() : 交换数组中的键和值。返回一个反转后的数组,如果同一个值出现了多次,则最后一个键名将作为他的值
  • array_reverse() :将数组中的元素翻转, 键值不变,顺序翻转
  • array_unique() :用于删除数组中重复的值,并返回没有重复值的新数组
  • array_intersect() :计算两个数组的交集
  • array_diff() : 计算两个数组的差值
  • unset() : 删除一个或者多个不连续的元素
  • array_splice() :删除多个连续的元素 ,会自动对数组重新进行索引
  • array_slice() :数组截取,不会改变原数组
统计数组
  • count() :计算数组中元素的个数或对象中属性个数,对于其他值返回1,如果参数是变量没有定义返回0
  • array_count_values() : 用于统计数组中所有的值出现的次数,返回的数组键名是原来的值,返回的值是键名在原数组出现的次数
  • array_sum() : 计算数组中所有的值的和
使用回调函数处理数组元素
  • array_filter() :使用回调函数过滤数组中的元素
  • array_walk() :对数组中的每个元素都应用回调函数处理
  • array_map() : 对多个数组中的每个元素都应用回调函数处理,多个数组时长度应该相同,函数是平行作用的,如果长度不同,最短的数组会用空值填充
排序
  • sort() [ rsort() ] :按升序(降序)对给定的数组的值排序,把数组转为索引数组
  • ksrot [ krsort() ] :按升序(降序)对给定的数组的键值排序
  • asort [ arsort() ] :按升序(降序)对给定数组的值进行排序,排序后保留索引关系
  • array_multisort($empty_arr, SORT_DESC) :二维数组排序,会改变原数组
数组转字符串

implode()

1
2
$arr = array('Hello','World!','I','love','Shanghai!');
echo implode(" ", $arr);
感谢您的阅读,本文由 Double-c 版权所有。如若转载,请注明出处:Double-c(https://double-c.github.io/2018/03/25/php-function/
字符编码
编写优秀的单元测试