这里我已经写好它的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. RvmTranslator6.1 - Attribute List

    RvmTranslator6.1 - Attribute List eryar@163.com 1. Introduction RvmTranslator can translate the RVM ...

  2. 比MD5 和HMAC还要安全的加密 - MD5 加时间戳

    //1.给一个字符串进行MD5加密 NSString *passKey = @"myapp"; passKey = [passKey md5String]; //2.对第一步中得到 ...

  3. jquery05 继承

    <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...

  4. html --- rem 媒体查询

    rem是一种相对长度单位,参考的基准是<html>标签定义的font-size. viewport 做移动端的h5,通常会在HTML文件中指定一个<meta>标签: <m ...

  5. 深入理解Android(1)——理解Android中的JNI(上)

    我参加了CSDN博客之星评选,如果在过去的一段时间里阳光小强的博客对你有所帮助,在这里希望能投上您宝贵的一票,每天都可以投一次:http://vote.blog.csdn.net/blogstar20 ...

  6. 码农Coding Peasant(s):一般指从事没有发展前景的软件开发职位

    码农Coding Peasant(s):一般指从事没有发展前景的软件开发职位,这种职位只能强化职业者在单方面的技术领域技能,学不到新技术,同时也是部分从事软件开发工作人员的一个自嘲的称号.一个依靠写代 ...

  7. vue组件中 IS 用法

    //html <link rel="stylesheet" href="http://www.jq22.com/demo/animate-141106223642/ ...

  8. Codefroces Educational Round 27 845G Shortest Path Problem?

    Shortest Path Problem? You are given an undirected graph with weighted edges. The length of some pat ...

  9. apache 使用 mod_fcgid.so模块时 配置指令

    FcgidBusyScanInterval指令 说明:扫描繁忙超时进程的间隔 语法: FcgidBusyScanInterval seconds 默认:FcgidBusyScanInterval 12 ...

  10. Android自定义视图

    Android框架为我们提供了大量的视图类来帮助我们做好展示信息以及同用户进行交互的工作.然后有时候,我们的app或许需要一些在Android内建视图之外特殊的视图,那么此时我们就需要自定义视图.下面 ...