这里我已经写好它的pdf版本号了,比本博客更加适合阅读。首先说一下它在百度网盘的下载地址把:百度网盘下载 ,假设左边连接跪了。能够在浏览器中输入:http://pan.baidu.com/s/1qW5AYzM 来下载。然后说一下它在csdn的下载地址,是免积分的奥,下载地址:csdn资源下载处 。假设连接不起作用,能够在浏览器输入:http://download.csdn.net/detail/xinguimeng/7697309
 来手动下载。

好,我们知道php中函数还是非常多的,正是这些函数为php提供了强大的支持,本小节我们研究一下php中的数组函数。因为php是一门弱类型语言,它的数组事实上是即有点像其它编程语言的数组,又有点像其它编程语言的字典。因此,还是蛮灵活多变的。

第一个函数就是array函数了。我们通经常使用它来创建一个数组它能够用于创建数值数组、关联数组、多维数组,功能也是异常的强大。这里它能够直接输入全部的值,也能够输入键值对。假设是键值对,多个键值对之间用逗号进行切割。并且键用=>来指向值,还是蛮直观的。另外说一下。假设PHP的版本号达到了5.4,那么能够使用段数组的语法来创建,即咱们用[]来取代array(),这个中括号中面和array函数里面写的东西是一样的。

第二个函数就是array_chunk,它用于数组切割。我们能够用它把数组切割为若干个元素的数组块,它接受三个參数,第一个參数是一个数组名,第二个參数是每几个元素为一组。第三个參数是可选的,默认取值为false。即不保留原始的键名,当然咱们能够设置为true来保留原始的键名。它的输出是一个多维数组。

第三个函数是array_column,这个函数非常实用,可是它须要PHP5.5的版本号,这里说一下把,它能够取出多维数组中某一列下标所相应的值,这一点对于从数据库中取出的数组数据来说尤其方便。

第四个函数是array_combine。它用来匹配数组的键值对,它须要两个參数,这两个參数是两个数组名,第一个用来当键,第二个用来当值,它们在PHP5中都是通用的。并且该数组还是蛮好用的。

第五个函数是array_count_values来统计元素出现次数,它仅仅须要输入一个数组名就可以,它会自己主动统计该数组中元素出现的次数,并且返回值也是一个数组,所不同的是返回的这个数组的值仅仅会是整数。并且是正整数。

第六个函数就比較复杂了,它不是一个函数,而是一个函数家族,就是array_diff系列,这个系列进行数组比較的功能。array_diff_assoc函数比較键名和键值,array_diff_key函数仅仅比較键值,array_diff_uassoc使用用户自己定义的函数去比較键名和键值,array_diff_ukey使用用户自己定义的函数去比較键值。这些函数所比較得到的结果是一个差集。它们都能够接受N个參数,都是从第一个參数的数组中出去后面各个參数中所拥有的数组的元素,然后返回剩下的数组。

第七个函数就是大家喜闻乐见的array_fill了。它在PHP4.2版本号以上可用,它接受三个參数,第一个是初始索引,第二个是填充元素的数量,第三个用于填充数组的键值,特别easy理解把。

第八个函数则是array_fill_keys了。它是在PHP5.2中引入的一个函数,它的第一个须要传递的參数是一个由键组成的数组,第二个參数则是数组的值,咱们得到的就是一个数组,它的键在第一个參数中被指定,值是咱们函数所使用的第二个參数,它的名字叫做array_fill_keys。

第九个函数则是array_flip,它的作用是把数组的键值对互换。即把键当成新数组的值,把值当成新数组的键,该函数在PHP4以上版本号都可用。

第十个函数则是array_filter。它的作用是进行数组的过滤,它所须要的第一个參数是一个数组。第二个则是一个回调函数,当我们调用array_filter的时候。它会自己主动把值传递给我们的回调函数,我们的回调函数在推断之后。假设返回值为true,则保留。否则。就抛弃该元素。值得注意的是这里的array_filter的第二个參数须要加双引號的。算了,我这里还是给出代码演示样例把:

<?

php
function xin($var){
return ($var % 3 == 0);
} $arr = array(4,5,6,7,8,9);
$msg = array_filter($arr,"xin");
print_r($msg);

那么上面的输出就会是一个数组,且该数组内的元素仅仅有6和9.

本篇博客写到这里就先告一段落了。辛星,期待您的关注奥。

辛星解读之php中的重点函数第一节之数组函数的更多相关文章

  1. 2014年辛星解读Javascript之DOM之事件及其绑定

    我们通过DOM的事件能够对HTML的事件作出反应.就像我们用其它编程语言写GUI一样,那么HTML包含哪些事件呢?以下是几个常见的样例,比方网页已经完毕记载,图像完毕载入,鼠标移动到元素上方.输入文字 ...

  2. 辛星解读mysql的用户管理

    可能做开发的多半不太关注这方面,可是要说到做运维.那就不能不关注了.由于我们都知道,root的权限太大了.不是随便能用的.我们平时最好用一些比較低的权限的用户.这样会让我们的安全性大大提高,也能防止我 ...

  3. 2014年辛星解读Javascript之DOM之冒泡和捕获

    上篇博客提到了Javascript事件绑定函数的三个參数.第一个是一个event.第二个是一个function.第三个是一个布尔变量.它用于指定事件传递的顺序,分为冒泡和捕获两种方式,接下来我们将揭开 ...

  4. 2014年辛星解读Javascript之用DOM动态操纵HTML元�

    关于DOM,我们了解了能够用DOM操纵HTML的一些属性和样式,还能够为HTML元素绑定事件等等,那么接下来,我们将涉及到用DOM来动态的创建.删除HTML等一些操作,我的核心思路还是重实战,因此,代 ...

  5. 2014年辛星解读css第一节

    CSS是Cascading Style Sheets的缩写.即层叠样式表,它用于表现HTML的样式,即HTML仅仅是去写该网页有哪些内容,至于怎样去表现它们,由CSS去定制. ************ ...

  6. 2014年辛星解读Javascript之DOM高速入门

    在Javascript的知识中,有一个所谓的DOM.即文档对象模型,我们能够通过它来訪问HTML文档的元素,当网页被载入的时候,浏览器会去创建DOM,有了这个DOM.我们能够使用Javascript去 ...

  7. 2014年辛星解读css第五节

    本小节我们解说css中的"盒模型".即"box model",它通经常使用于在布局的时候使用,这个"盒模型"也有人成为"框模型&q ...

  8. 辛星浅谈mysql中的数据碎片以及引擎为MyISAM下的操作

    对于mysql中的数据碎片,事实上和我们删除数据是息息相关的,删除数据的时候必定会在数据文件里造成不连续的空白空间,对于少量的数据的删除,并不会产生多少的空白空间.假设在一段时间内的大量的删除操作,会 ...

  9. 2014年辛星解读css第二节

    第一节我们简单介绍了一下CSS的工作流程,我相信读者会有一个大体的认识,那么接下来我们将会深入的研究一下CSS的细节问题,这些问题的涉及将会使我们的工作更加完好. *************凝视*** ...

随机推荐

  1. [Zabbix] 怎样实现邮件报警通知以及免费短信报警通知

     前提条件: (1) zabbixserver端已经安装成功而且执行. (2) zabbixclient已经成功建立而且执行. 1 下载而且安装msmtp软件 Wget http://sourcefo ...

  2. php安装zendDebug

    这次一定要写.这个zendDebug安装说不麻烦也简单,可是我却安装了非常久,就是自己粗心的问题.这个一定要解决呀. 言归正传,首先.去官网上下载zendDebug的安装文件.下载地址.TMD这个地址 ...

  3. Intersection between 2d conic in OpenCASCADE

    Intersection between 2d conic in OpenCASCADE eryar@163.com Abstract. OpenCASCADE provides the algori ...

  4. javafx KeyFrame

    import javafx.animation.Animation; import javafx.animation.KeyFrame; import javafx.animation.Timelin ...

  5. node内容

    什么是node? node是一门技术,并不是一门新的语言.是JavaScript运行环境. node在解析JavaScript,依靠的是什么? 依靠的是谷歌浏览器中的v8引擎,所以不需要考虑兼容性,n ...

  6. HDU——T 1711 Number Sequence

    http://acm.hdu.edu.cn/showproblem.php?pid=1711 Time Limit: 10000/5000 MS (Java/Others)    Memory Lim ...

  7. UVa10397_Connect the Campus(最小生成树)(小白书图论专题)

    解题报告 题目传送门 题意: 使得学校网络互通的最小花费,一些楼的线路已经有了. 思路: 存在的线路当然全都利用那样花费肯定最小,把存在的线路当成花费0,求最小生成树 #include <ios ...

  8. screen-调节屏幕亮度

    今天做项目的时候,需要实现一个功能,就是进入一个应用,在这个应用中,屏幕的亮度变为最亮.关键代码如下 bt1.setOnClickListener(new OnClickListener() { @O ...

  9. Objective-C基础笔记(9)Foundation常用类NSArray

    NSArray用来存储对象的有序列表,它是不可变的 NSArray不能存储C语言中的基本数据类型,如int.float.enum.struct,也不能存储nil,nil代表数组元素的结束 // // ...

  10. HDU 2988 Dark roads(kruskal模板题)

    Dark roads Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...