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 相关文章推荐
玩转图像函数库―常见图形操作
Sep 03 PHP
PHP4在WinXP下IIS和Apache2服务器上的安装实例
Oct 09 PHP
php 多个submit提交表单 处理方法
Jul 07 PHP
一个典型的PHP分页实例代码分享
Jul 28 PHP
学习使用curl采集curl使用方法
Jan 11 PHP
PHP循环结构实例讲解
Feb 10 PHP
php实现文件编码批量转换
Mar 10 PHP
ThinkPHP3.1查询语言详解
Jun 19 PHP
php常用字符串处理函数实例分析
Nov 22 PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
Dec 17 PHP
PHP file_get_contents函数读取远程数据超时的解决方法
May 13 PHP
两款万能的php分页类
Nov 12 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/03/15 PHP
php 无限分类 树形数据格式化代码
2016/10/11 PHP
php微信高级接口调用方法(自定义菜单接口、客服接口、二维码)
2016/11/28 PHP
PHP设计模式之适配器模式定义与用法详解
2018/04/03 PHP
监控 url fragment变化的js代码
2010/04/19 Javascript
js获得鼠标的坐标值的方法
2013/03/13 Javascript
Javascript原型链的原理详解
2016/01/05 Javascript
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
2016/08/25 Javascript
jquery popupDialog 使用 加载jsp页面的方法
2016/10/25 Javascript
Bootstrap模态框使用详解
2017/02/15 Javascript
axios学习教程全攻略
2017/03/26 Javascript
分享Bootstrap简单表格、表单、登录页面
2017/08/04 Javascript
JS库之Three.js 简易入门教程(详解之一)
2017/09/13 Javascript
从vue源码解析Vue.set()和this.$set()
2018/08/30 Javascript
JavaScript 防盗链的原理以及破解方法
2020/12/29 Javascript
[31:01]2014 DOTA2国际邀请赛中国区预选赛5.21 CNB VS Orenda
2014/05/23 DOTA
Python高效编程技巧
2013/01/07 Python
python中的列表推导浅析
2014/04/26 Python
在Windows服务器下用Apache和mod_wsgi配置Python应用的教程
2015/05/06 Python
Go语言基于Socket编写服务器端与客户端通信的实例
2016/02/19 Python
Python列表删除元素del、pop()和remove()的区别小结
2019/09/11 Python
python二元表达式用法
2019/12/04 Python
django多种支付、并发订单处理实例代码
2019/12/13 Python
学python爬虫能做什么
2020/07/29 Python
CSS3 实现的火焰动画
2020/12/07 HTML / CSS
微软香港官网及网上商店:Microsoft HK
2016/09/01 全球购物
ECCO俄罗斯官网:北欧丹麦鞋履及皮具品牌
2020/06/26 全球购物
计算机通信专业推荐信
2014/02/22 职场文书
餐饮食品安全责任书
2015/01/29 职场文书
手术室护士个人总结
2015/02/13 职场文书
预防艾滋病宣传活动总结
2015/05/09 职场文书
回复函范文
2015/07/14 职场文书
新学期开学标语2015
2015/07/16 职场文书
小学班主任教育随笔
2015/08/15 职场文书
小学体育跳绳课教学反思
2016/02/16 职场文书
详解在OpenCV中如何使用图像像素
2022/03/03 Python