PHP常用数组函数介绍


Posted in PHP onJuly 28, 2014

在编程中查手册是少不了的,所以要会学着使用已有的东西,就如PHP中的数组处理函数已经有排序函数了,为什么还要在写东西是费着劲去写冒泡或者堆排或者快排呢。

编程是间接的过程,也是重用的过程,要写出好的代码是少不了设计模式来做支撑的,可能对初学者来说学习设计模式有些吃力(就像我当初看设计模式时,真是有点费劲),不过等你的代码量有一定积累时,在研究设计模式时,感觉设计模式真的挺有用的,能帮助你写出漂亮的代码。说着说着有点跑偏了,还是来总结一下php中对数组操作的常用函数吧。

以下总结的数组常用的函数,可能有些读者会感觉有些少,众人拾柴火焰高吗,如果感觉还有其他常用的数组处理函数,给个评论留下呗,不要吝啬自己的知识嘛,和别人分享东西不是一件很快乐的东西吗。还有,下面的代码出自本人之手,不过是两年前写的代码了,欢迎大家批评指正。

array_splice() 删除数组中的指定元

array_splice(数组名,从前往后删的个数,new一个数组的大小);没有第三参数也就没有返数组,没有第三个参数时,第二个参数的意义为从前往后保留几个

exp:

<?php
  $my_array=array(  //建立数组
    "hehe"=>"haha",
    "A"=>"lu",
    "lu"=>"ge"
  );
  $new=array_splice($my_array,1,3);  //使用array_splice(数组名,从前往后删的个数,new一个数组的大小);
  var_dump($new);
?>

    结果:array(2) { ["A"]=> string(2) "lu" ["lu"]=> string(2) "ge" }

2、foreach()数组的遍历

    用法:foreach(数组 as 键名=>键值)或foreach(数组 as 键值)

exp:

<?php
  $my_array=array(  //建立数组
    "hehe"=>"haha",
    "A"=>"lu",
    "lu"=>"ge"
  );
  foreach($my_array as $key=>$value)
  {
    echo $key."=>".$value."<br/>";
  }
?>

输出结果:

hehe=>haha

A=>lu

lu=>ge

 

3、数组的排序

    (1)sort()和rsort()    按键值排序sort()从小到大,rsort()从大到小

            sort ()   exp :    

<?php
  $my_array=array(1,2,3,6,7,8,9,4,5);//建立数组
  sort($my_array);
  foreach($my_array as $keys=>$value)
  {
    echo $keys."=>".$value."<br/>";
  }
?>

           输出结果:

0=>1

  1=>2
  2=>3
  3=>4
  4=>5
  5=>6
  6=>7
  7=>8
  8=>9

             rsort() exp:

<?php
  $my_array=array(1,2,3,6,7,8,9,4,5);//建立数组
  rsort($my_array);
  foreach($my_array as $keys=>$value)
  {
    echo $keys."=>".$value."<br/>";
  }
?>

  输出结果:

0=>9
  1=>8
  2=>7
  3=>6  
  4=>5
  5=>4
  6=>3
  7=>2
  8=>1

    (2).asort()和arsort()和上面的原理一样,不过不改变键名和键值的对应关系

    exp:

<?php
  $my_array=array(1,2,3,6,7,8,9,4,5);//建立数组
  asort($my_array);
  foreach($my_array as $keys=>$value)
  {
    echo $keys."=>".$value."<br/>";
  }
?>

输出结果:

0=>1
1=>2
2=>3
7=>4
8=>5
3=>6
4=>7
5=>8
6=>9

(3)ksort()和krsort()是按键名的大小排序

4.数组的数学类函数

array_sum()计算数组的所有键值的和  count()计算元素的个数

exp:

<?php
  $my_array=array(1,2,3,6,7,8,9,4,5);//建立数组
  echo array_sum($my_array);
?>

    输出结果:45

5.其他函数

array_unique() 去除数组中的相同元素

in_array()检测一个值是否在数组中(返回true和false)

array_search()返回的是键或值,返回的是键值所对应的键名

shuffle()打乱原有的数组

<?php
  $my_array=array(1,2,3,6,7,8,9,4,5,5,5,5);//建立数组
  array_unique($my_array);//去除数组中的相同元素
  var_dump($my_array);
  echo "<br/>";
  echo in_array(5,$my_array);
  echo "<br/>";
  $new=array_search(6,$my_array);//返回的是键值所对应的键名
  echo $new;
?>

输出结果:

array(12) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(6) [4]=> int(7) [5]=> int(8) [6]=> int(9) [7]=> int(4) [8]=> int(5) [9]=> int(5) [10]=> int(5) [11]=> int(5) } 
1
3
PHP 相关文章推荐
mysql limit查询优化分析
Nov 12 PHP
PHP获取MSN好友列表类的实现代码
Jun 23 PHP
php采集自中央气象台范围覆盖全国的天气预报代码实例
Jan 04 PHP
php截取html字符串及自动补全html标签的方法
Jan 15 PHP
php使用正则表达式进行字符串搜索的方法
Mar 23 PHP
php验证邮箱和ip地址最简单方法汇总
Oct 30 PHP
PHP实现补齐关闭的HTML标签
Mar 22 PHP
php 中htmlentities导致中文无法查询问题
Sep 10 PHP
PHP7内核之Reference详解
Mar 14 PHP
php探针不显示内存解决方法
Sep 17 PHP
thinkphp5框架路由原理与用法详解
Feb 11 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
Apr 23 PHP
PHP调用C#开发的dll类库方法
Jul 28 #PHP
php中单个数据库字段多列显示(单字段分页、横向输出)
Jul 28 #PHP
windows的文件系统机制引发的PHP路径爆破问题分析
Jul 28 #PHP
浅析PHP程序设计中的MVC编程思想
Jul 28 #PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
Jul 28 #PHP
php实现的九九乘法口诀表简洁版
Jul 28 #PHP
完美的2个php检测字符串是否是utf-8编码函数分享
Jul 28 #PHP
You might like
PHP批量生成缩略图的代码
2008/07/19 PHP
php基础教程 php内置函数实例教程
2012/08/21 PHP
php在apache环境下实现gzip配置方法
2015/04/02 PHP
php unicode编码和字符串互转的方法
2020/08/12 PHP
PHP Laravel 上传图片、文件等类封装
2017/08/16 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
YII2框架中ActiveDataProvider与GridView的配合使用操作示例
2020/03/18 PHP
网页自动刷新,不产生嗒嗒声的一个解决方法
2007/03/27 Javascript
Javascript &amp; DHTML 实例编程(教程)DOM基础和基本API
2007/06/02 Javascript
JS 获取span标签中的值的代码 支持ie与firefox
2009/08/24 Javascript
javascript实现数字+字母验证码的简单实例
2014/02/10 Javascript
NodeJS学习笔记之Connect中间件模块(二)
2015/01/27 NodeJs
Javascript显示和隐藏ul列表的方法
2015/07/15 Javascript
AngularJs定制样式插入到ueditor中的问题小结
2016/08/01 Javascript
js学习之----深入理解闭包
2016/11/21 Javascript
vue.js中v-on:textInput无法执行事件问题的解决过程
2017/07/12 Javascript
新手vue构建单页面应用实例代码
2017/09/18 Javascript
vue实现手机号码抽奖上下滚动动画示例
2017/10/18 Javascript
浅谈vue自定义全局组件并通过全局方法 Vue.use() 使用该组件
2017/12/07 Javascript
Vue实现点击按钮复制文本内容的例子
2019/11/09 Javascript
jQuery实现简单日历效果
2020/07/05 jQuery
[00:18]天涯墨客三技能展示
2018/08/25 DOTA
在Python的Flask框架中实现单元测试的教程
2015/04/20 Python
python计算牛顿迭代多项式实例分析
2015/05/07 Python
Python变量和字符串详解
2017/04/29 Python
浅谈用Python实现一个大数据搜索引擎
2017/11/28 Python
修改python plot折线图的坐标轴刻度方法
2018/12/13 Python
python实现网页自动签到功能
2019/01/21 Python
python设置环境变量的作用整理
2020/02/17 Python
GUESS盖尔斯法国官网:美国时尚品牌
2016/09/23 全球购物
周生生珠宝香港官网:Chow Sang Sang(香港及海外配送)
2019/09/05 全球购物
创业资金计划书
2014/02/06 职场文书
企业宣传标语
2014/06/09 职场文书
2014年秋季开学寄语
2014/08/02 职场文书
夫妻婚内购房协议书
2014/10/05 职场文书
python获取带有返回值的多线程
2022/05/02 Python