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 相关文章推荐
PHP5 安装方法
Jan 15 PHP
学习php笔记 字符串处理
Oct 19 PHP
php去掉字符串的最后一个字符附substr()的用法
Mar 23 PHP
PHP中array_merge和array相加的区别分析
Jun 17 PHP
php统计时间和内存使用情况示例分享
Mar 13 PHP
php实现的漂亮分页方法
Apr 17 PHP
PHP实现更新中间关联表数据的两种方法
Sep 01 PHP
PHP中加密解密函数与DES加密解密实例
Oct 17 PHP
php通过function_exists检测函数是否存在的方法
Mar 18 PHP
zend框架实现支持sql server的操作方法
Dec 08 PHP
PHP使用栈解决约瑟夫环问题算法示例
Aug 27 PHP
PHP实现的函数重载功能示例
Aug 03 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 输出双引号&quot;与单引号'的方法
2010/05/09 PHP
PHP实现服务器状态监控的方法
2014/12/09 PHP
Yii实现的多级联动下拉菜单
2016/07/13 PHP
php读取XML的常见方法实例总结
2017/04/25 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
javascript prototype,executing,context,closure
2008/12/24 Javascript
jQuery下通过replace字符串替换实现大小图片切换
2012/05/22 Javascript
JavaScript 反科里化 this [译]
2012/09/20 Javascript
JS实现在线统计一个页面内鼠标点击次数的方法
2015/02/28 Javascript
JQuery使用index方法获取Jquery对象数组下标的方法
2015/05/18 Javascript
javascript委托(Delegate)blur和focus用法实例分析
2015/05/26 Javascript
浅谈js中的延迟执行和定时执行
2016/05/31 Javascript
浅谈JS函数节流防抖
2017/10/18 Javascript
详解从买域名到使用pm2部署node.js项目全过程
2018/03/07 Javascript
[原创]jQuery实现合并/追加数组并去除重复项的方法
2018/04/11 jQuery
JS实现随机抽选获奖者
2019/11/07 Javascript
js点击事件的执行过程实例分析【冒泡与捕获】
2020/04/11 Javascript
js动态添加带圆圈序号列表的实例代码
2021/02/18 Javascript
如何在Python中实现goto语句的方法
2019/05/18 Python
基于YUV 数据格式详解及python实现方式
2019/12/09 Python
Python遍历字典方式就实例详解
2019/12/28 Python
pytorch常见的Tensor类型详解
2020/01/15 Python
使用 Python 处理3万多条数据只要几秒钟
2020/01/19 Python
利用python实现后端写网页(flask框架)
2021/02/28 Python
CSS3属性使网站设计增强同时不消弱可用性
2009/08/29 HTML / CSS
中国综合性网上购物商城:当当(网上卖书起家)
2016/11/16 全球购物
法国在线购买汽车轮胎网站:123pneus.fr
2019/02/25 全球购物
初中班主任评语
2014/04/24 职场文书
教师业务培训方案
2014/05/01 职场文书
银行竞聘报告范文
2014/11/06 职场文书
公务员年终个人总结
2015/02/12 职场文书
2015年学生资助工作总结
2015/05/25 职场文书
父亲节感言
2015/08/03 职场文书
2019财务毕业实习报告
2019/06/27 职场文书
Python基础之函数嵌套知识总结
2021/05/23 Python
详细分析PHP7与PHP5区别
2021/06/26 PHP