PHP 常用函数总结(一)
重点: 看函数的 ‘参数’ 和 ‘返回值’
文档:http://www.w3school.com.cn/php/php_ref_array.asp
http://www.w3school.com.cn/php/php_ref_string.asp
1、PHP处理数组的常用函数。
- array() 创建数组
array_column(array, column_key, index_key) 返回输入数组中某个单一列的值【对二维数组生效】
array_combine(keys, values) 函数通过合并两个数组来创建一个新数组,其中的一个数组是键名,另一个数组的值为键值。【注释:键名数组和键值数组的元素个数必须相同!】
array_count_values(array) 统计数组中的所有值出现的次数。本函数返回一个数组,其元素的键名是原数组的值,键值是该值在原数组中出现的次数。
array_diff(array1, array2, array3 ...) 返回两个数组的差集数组,只比较键值。该数组包括了所有在被比较的数组中,但是不在任何其他参数数组中的键值。在返回的数组中,键名保持不变。【注释:可用一个或任意多个数组与第一个数组进行比较。】
- array_diff_assoc(array1, array2, array3 ...) 函数用于比较两个(或更多个)数组的键名和键值 ,并返回差集。
array_diff_key(array1, array2, array3 ...) 用于比较两个(或更多个)数组的键名 ,并返回差集。
array_intersect(array1, array2, array3 ...) 用于比较两个(或更多个)数组的键值,并返回交集。
array_key_exists(key,array) 检查某个数组中是否存在指定的键名,如果键名存在则返回 true,如果键名不存在则返回 false。【注释:如果您指定数组的时候省略了键名,将会生成从 0 开始并且每个键值对应以 1 递增的整数键名】
- array_merge(array1, array2, array3 ...) 把一个或多个数组合并为一个数组并返回。【注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。】
- array_merge_recursive(array1, array2, array3 ...) 把一个或多个数组合并为一个数组并返回。【注释:如果两个或更多个数组元素有相同的键名,不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。】
array_push(array, value1, value2 ...) 将一个或多个元素插入数组的末尾(入栈)【注释:如果用 array_push() 来给数组增加一个单元,还不如用 $array[] =,因为这样没有调用函数的额外负担。】
- array_pop(array) 删除数组中的最后一个元素。
- array_reverse(array, preserve) 将数组的顺序反转并返回新数组【注释:如果第二个参数指定为 true,则元素的键名保持不变,否则键名将丢失。】
- array_rand(array, number) 从数组中随机选出一个或多个元素,并返回。
- array_slice(array, start, length, preserve) 在数组中根据条件取出一段值,返回选取的元素。preserve参数规定函数是保留键名还是重置键名,默认false,重置键名。【注释:如果数组有字符串键,所返回的数组将保留键名。】
- array_splice(array, start, length, array2) 选择数组中的一系列元素,删除它们并用其它值代替。
- array_unique(array) 移除数组中的重复的值,并返回结果数组。
- count(array) 返回数组中元素的个数【别名:sizeof(array)】
- in_array(search, array, type) 搜索数组中是否存在指定的值。如果 search 参数是字符串且 type 参数被设置为 TRUE,则搜索区分大小写。
2、PHP处理字符串的常用数组。
- explode(separator,string[ ,limit]) 把字符串按指定的分割符separator打散为数组。limit参数可选,限制返回的个数。【注释:separator不能为空】
- implode(separator,array)或join(separator[ ,array]) 返回由数组元素组合成的字符串。【注释:如果未设置 array 参数,则由该函数设置的变量将覆盖已存在的同名变量。php.ini 文件中的 magic_quotes_gpc 设置影响该函数的输出。如果已启用,那么在 parse_str() 解析之前,变量会被 addslashes() 转换。】
- printf(format, arg1, arg2, arg++) 输出格式化的字符串。
- sprintf(format, arg1, arg2, arg++) 把格式化的字符串写入变量中。【提示:相关函数:printf()、 vprintf()、 vsprintf()、 fprintf() 和 vfprintf()】
- parse_str(string, array) 把查询字符串解析到变量中。
- similar_text(string1, string2, percent) 计算两个字符串的相似度,也能计算两个字符串的百分比相似度。levenshtein() 函数比 similar_text() 函数更快,不过,similar_text() 函数可通过更少的必需修改次数为您提供更精确的结果。
- strtr(string, from, to)或strtr(string, array('from'=>'to')) 转换字符串中特定的字符。
- str_repeat(string, repeat) 把字符串重复指定的次数
- str_replace(find, replace, string, count) 以其他字符替换字符串中的一些字符(区分大小写)。【注意与strtr(string, array)区分】
- str_split(string, length) 把字符串按每length长度分割到数组中。
- strip_tags() 剥去字符串中的 HTML、XML 以及 PHP 的标签。【该函数始终会剥离 HTML 注释。这点无法通过 allow 参数改变。】
- strlen(string) 返回字符串的长度。 【一般用mb_strlen()函数来替换】
- strtolower(string) 将字符串转换成小写
- strtoupper(string) 将字符串转换成大写
- strchr(string, search,befor_search) strstr()的别名,搜索字符串在另一字符串中的第一次出现返回此字符串的其余部分。befor_search参数为true时返回search 参数第一次出现之前的字符串部分。
- substr(string, start, length) 返回字符串的一部分。
- substr_count(string, substring, start, length) 计算子串在字符串中出现的次数。【注释:子串区分大小写】
- substr_replace() 把字符串的一部分替换为另一个字符串。
- ltrim(string, charlist) 移除字符串左侧的空白字符或其他预定义字符。
- rtrim(string, charlist) 移除字符串右侧的空白符或其他预定义字符。
- trim(string, charlist) 移除字符串两侧的空白符或其他预定义字符。
- number_format(number, decimals,decimalpoint,separator) 通过千位分组来格式化数字。【注释:该函数支持一个、两个或四个参数(不是三个),separator参数设置了的话其他参数必须设置】
- is_string(variable) 判断变量是否为字符串类型
1、注意区分strtr()、str_replace()、preg_replace()、substr_replace()
php_mbstring扩展主要用于中、英文混合的情况。安装PHP时一般需要安装该扩展,默认是没有安装的。
2、注意区分strlen() 与mb_strlen()的区别。
3、注意区分substr()与mb_substr()的区别。
4、格式化函数的参数简表
参数 | 描述 |
---|---|
format |
必需。规定字符串以及如何格式化其中的变量。 可能的格式值:
附加的格式值。必需放置在 % 和字母之间(例如 %.2f):
注释:如果使用多个上述的格式值,它们必须按照以上顺序使用。 |
arg1 | 必需。规定插到 format 字符串中第一个 % 符号处的参数。 |
arg2 | 可选。规定插到 format 字符串中第二个 % 符号处的参数。 |
arg++ | 可选。规定插到 format 字符串中第三、四等 % 符号处的参数。 |
3、PHP处理时间的常用函数。
- date_create(tiem, timezone) 返回一个新的 DateTime 对象
- date_format(dateObject, format) 返回根据指定格式进行格式化的日期
- date_default_timezone_get() 返默认时区
- date_default_timezone_set() 设置默认时区【合法的时区列表http://php.net/manual/zh/timezones.php】
- date_diff(datetime1, datetime2, absolute) 返回两个 DateTime 对象间的差值【absolute可选。规定布尔值。TRUE 表示间隔/差值必须是正的。默认是 FALSE。】
- date(format, timestamp) 格式化本地时间/日期
- getdate(timestamp) 返回日期/时间信息
- gettimeofday(return_float) 返回当前时间信息
- microtime() 返回当前时间的微妙数
- mktime() 返回一个日期的Unix时间戳
- strtotime(time, now) 将任意英文文本的日期或时间描述解析成Unix 时间戳
- time() 返回当前时间的Unix时间戳
PHP 常用函数总结(一)的更多相关文章
- oracle常用函数及示例
学习oracle也有一段时间了,发现oracle中的函数好多,对于做后台的程序猿来说,大把大把的时间还要学习很多其他的新东西,再把这些函数也都记住是不太现实的,所以总结了一下oracle中的一些常用函 ...
- 总结js常用函数和常用技巧(持续更新)
学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Aj ...
- [转]SQL 常用函数及示例
原文地址:http://www.cnblogs.com/canyangfeixue/archive/2013/07/21/3203588.html --SQL 基础-->常用函数 --===== ...
- PHP常用函数、数组方法
常用函数:rand(); 生成随机数rand(0,50); 范围随机数时间:time(); 取当前时间戳date("Y-m-d H:i:s"); Y:年 m:月份 d:天 H:当前 ...
- Oracle常用函数
前一段时间学习Oracle 时做的学习笔记,整理了一下,下面是分享的Oracle常用函数的部分笔记,以后还会分享其他部分的笔记,请大家批评指正. 1.Oracle 数据库中的to_date()函数的使 ...
- Thinkcmf:页面常用函数
Thinkcmf:页面常用函数 全站seo: 文章列表: {$site_seo_title} <!--SEO标题--> {$site_seo_keywords} < ...
- matlab进阶:常用功能的实现,常用函数的说明
常用功能的实现 获取当前脚本所在目录 current_script_dir = fileparts(mfilename('fullpath')); % 结尾不带'/' 常用函数的说明 bsxfun m ...
- iOS导航控制器常用函数与navigationBar常用属性
导航控制器常用函数触发时机 当视图控制器的View将要出现时触发 - (void)viewWillAppear:(BOOL)animated 当视图控制器的View已经出现时触发 - (void)vi ...
- 《zw版·Halcon-delphi系列原创教程》 zw版-Halcon常用函数Top100中文速查手册
<zw版·Halcon-delphi系列原创教程> zw版-Halcon常用函数Top100中文速查手册 Halcon函数库非常庞大,v11版有1900多个算子(函数). 这个Top版,对 ...
- phpcms V9 常用函数 及 代码整理
常用函数 及 常用代码 总结如下 <?php //转换字符串或者数组的编码 str_charset($in_charset, $out_charset, $str_or_arr) //获取菜单 ...
随机推荐
- 从Iris数据集开始---机器学习入门
代码多来自<Introduction to Machine Learning with Python>. 该文集主要是自己的一个阅读笔记以及一些小思考,小总结. 前言 在开始进行模型训练之 ...
- Gitlab+Jenkins学习之路(十)之Jenkins按角色授权和Pipeline
一.Jenkins按角色授权 当一个公司的开发分为多个组别,或者是多个项目等等.用于公司内部测试,让开发人员自行构建测试,此时不可能让所有的开发都在公用一个构建,这样变得很混乱,为了解决这一问题,je ...
- 静态成员变量和静态成员函数(static)
数据成员可以分静态变量.非静态变量两种. 静态成员:静态类中的成员加入static修饰符,即是静态成员.可以直接使用类名+静态成员名访问此静态成员,因为静态成员存在于内存,非静态成员需要实例化才会分配 ...
- 在腾讯ubuntu云服务器上面部署asp.net core 2.1网站
微软以后的政策肯定是在开源和跨平台这一块,所以最近在学习asp.net core 2.1,查看市面上面大部分的把asp.net core部署在Linux后,决定亲自实验一番,不操作不知道,居然最新版本 ...
- Spring学习(十八)----- Spring AOP+AspectJ注解实例
我们将向你展示如何将AspectJ注解集成到Spring AOP框架.在这个Spring AOP+ AspectJ 示例中,让您轻松实现拦截方法. 常见AspectJ的注解: @Before – 方法 ...
- 关于selenium的智能等待页面加载的问题
我们经常会碰到用selenium操作页面上某个元素的时候,需要等待页面加载完成后,才能操作, 否则页面上的元素不存在,会抛出异常. 或者碰到AJAX异步加载,我们需要等待元素加载完成后,才能操作. 首 ...
- VS2017 C++操作mysql数据库
1.首先安装mysql 具体教程可以参考https://blog.csdn.net/zhouzezhou/article/details/52446608 注意安装产品的时候记得选择MySQL Con ...
- Shuffle Bags让你的随机不那么随机
前言 当我最初写游戏时,我经常使用标准Random()函数,然后写一堆if和else条件来我获得预期结果.如果结果不太好,我会写更多的条件进行过滤或者筛选,直到我觉得游戏变得有趣.最近我发现有更好的方 ...
- RabbitMQ和Kafka,更加便捷高效的消息队列使用方式,请放心食用
一.RabbitMQ实例介绍RabbitMQ实例由华为云分布式消息服务(DMS)团队打造,实例采用物理隔离的方式部署,租户独占RabbitMQ实例.一键式部署,完全兼容开源RabbitMQ的使用方式, ...
- Ansible 连接主机显示报错的处理方案
一.在ansible安装完毕后一般需要以SSH的方式连接到需要进行管理的目标主机,一开始遇到了如下问题: 192.168.15.4 | UNREACHABLE! => { "ch ...