最新公告
  • 欢迎您光临波比源码,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • php 常用数组应用说明

    ange($low, $high),range($low, $high, $step);创建顺序值的数组如:range(1,4)为(1,2,3,4)又如range('a','z')

    each($array)按顺序返回数组的当前元素,并且将下一个元素设置为当前元素;

    reset($array)将数组当前元素重新设置到数组开始处

    list()可以用来将一个数组分解为一系列的值,如 list($a,$b)=each($array)

    shuffle($array),array_rand($arg, $num_req);对数组随机排序

    array_reverse($input),array_reverse($input, $preserve_keys)   返回原数组的反向排序

    sort($array);对数组排序

    php数组是一个重要的概念,它包含有大量的函数,方便人们的开发…现将它的数组分类,以方便查询及应用.

    先说说php数组的定义…php数组包含两个项,key和value,可以通过key来获取相应的value,其中key又可以是数值和关联的,如$array[0],$array[one]…

    创建数组

    php中的数组声明跟其它语言的也有点小小的差别,但一样可以声明为一维,两维,三维及多维等,如 $array[0] = 1,$array = array(1,2,3); 一维数组,只包括三个值,属于数值型数组,引用时可用$array[0]来代表1,创建数值数组时可以省略索引.

    1. $array = array
    2.    1 => “one”, 
    3.    2 => “two”, 
    4.    3 => “three”, 
    5.    4 => array
    6.     “one” => 1, 
    7.     “two” => 2, 
    8.     “three” => 3 
    9.    ) 
    10. ); 

    二维数组,同时又是关联数组,引用时可以$array[4][“one”]来代表1,三维以上依此类推…,如果要批量创建数组,则可以通过下面这个函数:

    array range ( mixed low, mixed high [, number step] )

    如:$array = range(1,6);代表array(1,2,3,4,5,6);

    $array = range(a,f); 代表 array(a,b,c,d,e,f);

    输出数组

    php中输出数组的函数有比较多,常用的有

    bool print_r ( mixed expression [, bool return] )

    void var_dump ( mixed expression [, mixed expression [, …]] )

    还有像echo,print,printf都可以输出单个数组.

    测试数组:有时我们需要判定一个变量是否为数组,则可以使用

    bool is_array ( mixed var )

    增加或删除数组元素

    数组声明后并不是一成不变的,可能通过对数组的增加删除来进行深入的操作:

    int array_push ( array &array, mixed var [, mixed …] ) 将一个或多个单元压入数组的末尾,数组的长度根据入栈变量的数目增加,如array_push($array,$var)

    mixed array_pop ( array &array ) 将数组的最后一个元素弹出(出栈),并在结束后重置数组的指针

    mixed array_shift ( array &array ) 返回数组的第一个元素.

    int array_unshift ( array &array, mixed var [, mixed …] ) 在数组的开头插入一个或多个单元

    array array_pad ( array input, int pad_size, mixed pad_value ) 用值将数组填补到指定的长度,如array_pad($array,3,$var);

    定位数组元素

    bool in_array ( mixed needle, array haystack [, bool strict] ) 检查数组中是否存在某个值

    array array_keys ( array input [, mixed search_value [, bool strict]] ) 返回数组中的所有键名,重组成一个新数组

    bool array_key_exists ( mixed key, array search ) 检查给定的key是否存在于数组中.

    array array_values ( array input ) 返回数组中所有的值

    mixed array_search ( mixed needle, array haystack [, bool strict] ) 在数组中搜索给定的值,成功则返回key.

    遍历数组

    php中提供了很多获取key和value的函数

    mixed key ( array &array ) 从关联数组中取得键名

    mixed reset ( array &array ) 将数组指针重置

    array each ( array &array ) 返回数组中的键/值对并将数组向前移一步

    mixed current ( array &array ) 返回数组中的当前单元

    mixed end ( array &array ) 将数组中的指针移向最后一位

    mixed next ( array &array ) 将数组中的指针移向下一位

    mixed prev ( array &array ) 将数组中的指针移向上一位

    array array_reverse ( array array [, bool preserve_keys] ) 返回一个单元顺序相反的数组

    array array_flip ( array trans ) 将数组中的键值角色调换

    除了上面的函数外还可以使用循环来对数组中的元素进行遍历,如

    1. foreach (array_expr as $value
    2. {statement} 
    3. foreach (array_expr as $key=>$value
    4. {statement} 

    提取每个键/值对,直到获得所有项或满足某些内部条件为止

    void list ( mixed varname, mixed … ) 把数组中的值赋给一些变量

    确定数组大小和唯一性

    int count ( mixed var [, int mode] ) 计算数组中单元数组或对象中属性的个数, sizeof 的同名函数

    array array_count_values ( array input ) 统计数组中所有值出现的次数

    array array_unique ( array array ) 移除数组中重复的值

    数组排序,这个听说是计算器的核心问题…呵呵…事实也是这样…

    bool sort ( array &array [, int sort_flags] ) 对数组进行排序

    bool natsort ( array &array ) 用自然排序法对数组进行排序

    bool natcasesort ( array &array ) 用自然排序法对数组进行排序,不区分大小写

    bool rsort ( array &array [, int sort_flags] ) 对数组进行逆向排序

    bool asort ( array &array [, int sort_flags] ) 对数组进行排序并保持索引关系

    bool array_multisort ( array ar1 [, mixed arg [, mixed … [, array …]]] ) 对多个数组或多维数组进行排序

    bool arsort ( array &array [, int sort_flags] ) 对数组进行逆序排序并保持索引关系

    bool ksort ( array &array [, int sort_flags] ) 对数组按键名排序

    bool krsort ( array &array [, int sort_flags] ) 对数组按键名逆序排序

    合并,拆分,接合和分解数组

    array array_combine ( array keys, array values ) 创建一个数组,一个数组的值作为其键名,另一个数组的值作为其值

    array array_merge ( array array1 [, array array2 [, array …]] ) 合并一个或多个数组

    array array_merge_recursive ( array array1 [, array …] ) 递归地全部一个或多个数组

    array array_slice ( array array, int offset [, int length [, bool preserve_keys]] ) 从数组中取出一段,建立一个新的数组,如果offset为正数,拆分从距数组开关的offset位置开始,如果为负数,则拆分从距数组末尾的offset 位置开始,此时距数组开关的count(input_array)-|length|位置结束

    array array_splice ( array &input, int offset [, int length [, array replacement]] ) 把数组中的部分值去掉,并用其它值替代.offset设置同上

    array array_intersect ( array array1, array array2 [, array …] ) 计算数组的交集,即是说如果第一个数组中出现过的值在接下来的几个数组中都有出现,则取出该值

    array array_intersect_assoc ( array array1, array array2 [, array …] ) 带索引检查数组中的交集

    array array_intersect_key ( array array1, array array2 [, array …] ) 使用键名比较数组中的交集

    array array_diff ( array array1, array array2 [, array …] ) 计算数组的差集, 即是说跟第一个数组中不同的值

    array array_diff_assoc ( array array1, array array2 [, array …] ) 带索引检查数组中的差集

    array array_diff_key ( array array1, array array2 [, array …] ) 使用键名比较数组中的差集

    其它比较有用的数组函数

    数组函数还有好多没有列出来…再上几个比较有用也比较常的,其它的就参考手册啦…手册里很清楚

    mixed array_rand ( array input [, int num_req] ) 数组中随机取出一个或多个键,num指定个数

    bool shuffle ( array &array ) 将数组打乱

    number array_sum ( array array ) 计算数组中所有值的总和,关联数组忽略

    array array_chunk ( array input, int size [, bool preserve_keys] ) 将一个数组分割成几个

    波比源码 – 精品源码模版分享 | www.bobi11.com
    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
    3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
    7. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!

    波比源码 » php 常用数组应用说明

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    波比源码
    一个高级程序员模板开发平台
    升级波友尊享更多特权立即升级