数组相关函数代码演练

  1. <?php
  2. echo "OK";
  3. // array_chunk(数组,size,是否保持元素的索引)
  4. $arr=array_chunk([1,2,3,4,5,6,7],3,true);
  5. echo "<pre>".print_r($arr,true)."</pre>";
  6. // array_column(数组,'值列',‘索引列’),主要针对二位数组操作,提取二维数组的列作为新的数组
  7. $arr=[
  8. ["id"=>1,"name"=>"ldy","age"=>30],
  9. ["id"=>2,"name"=>"cqw","age"=>34],
  10. ["id"=>3,"name"=>"dlf","age"=>31],
  11. ];
  12. $arr_n=array_column($arr,"age","name");
  13. var_dump($arr_n);
  14. //array_combline();把两个数组组成一个数组,一个数组的值当键一个数组的值当值;
  15. $arr_keys=['id'=>"id",'name'=>"name",'age'=>"age"];
  16. $arr_values=[4,"zkn",29];
  17. $arr=array_combine($arr_keys,$arr_values);
  18. echo "<pre>".print_r($arr,true)."</pre>";
  19. //array_count_values(数组)返回值在数组中出现的次数,值为键,次数为值,组成的数组;
  20. $arr=[1,2,3,4,5,4,2,6,8,9,7,5,8,2];
  21. var_dump(array_count_values($arr));
  22. echo "<hr>";
  23. //array_fill(start,sum,value);自动生成数组,start和sum必须使正整数
  24. print_r(array_fill(1,5,"L"));
  25. //array_fill_keys(arr,value);指定一个数组的值为键,生成一个数组,值value
  26. print_r(array_fill_keys(["A","B","C"],"L"));
  27. echo "<br>";
  28. //array_flip():数组交换键和值
  29. $arr=["id"=>0,"name"=>"ldy","age"=>20];
  30. print_r(array_flip($arr));
  31. //array_filter(arr,callback,ARRAY_FILTER_USE_KEYS|ARRAY_FILTER_BOTH);过滤函数
  32. // array_key_exists(key,arr)检测数组中是否存在键或者索引,返回布尔值;
  33. //array_key_first()|array_key_last() 返回当前键的值
  34. //array_keys();返回键名组成的数组
  35. // in_array("value",arr,true(值和类型)|flase(值)) 返回值布尔值
  36. // array_search("value",arr,true(值和类型)|flase(值))返回值键名
  37. //array_values();返会值组成的数组
  38. $arr1=[2,4,6,9,10,13,15,10];
  39. $arr2=["one","two","three","four"];
  40. //array_merge(arr...);合并多个数组;
  41. $arr=array_merge($arr1,$arr2);
  42. echo "<pre>".print_r($arr,true);
  43. //array_product():求数组的乘积
  44. echo array_product($arr1);
  45. //array_rand(arr,num);随机返回1个或者N个值的键名;1个时为单独的值,N个时为键组成的数组
  46. $arr2=["id"=>1,"name"=>"ldy","age"=>30];
  47. $arr=array_rand($arr2,2);
  48. echo "<pre>".print_r($arr,true);
  49. //array_reverse(arr,对索引数组是否保留键true|flase);返回一个反序的数组
  50. print_r(array_reverse($arr1,true));
  51. $arr1=[1,2,3,4,6,7];
  52. $arr2=[2,4,6,9];
  53. // array_replace(arr1,arr2)根据相同键,arr2的值替换arr1的值,如果arr2的键,arr1不存在,则直接添加入arr1;
  54. print_r(array_replace($arr1,$arr2));
  55. // array_slice(arr,start,lenght);截取数组
  56. echo "<hr>";
  57. // array_splice(arr,start,num,newvalue);去掉数组中一部分值,有新值代替,改变的原数组
  58. array_splice($arr1,1,3,[20,30]);
  59. echo print_r($arr1,true);
  60. //array_sum()求和
  61. $arr=[1,2,2,3,1,3,4,4,5];
  62. // array_unique($arr);返回一个去过重复数值后的数组
  63. print_r(array_unique($arr));
  64. //extract(arr)与compact(key,value);
  65. $arr=["id"=>1,"age"=>20];
  66. extract($arr);
  67. $arr=array("id",'age');
  68. $name="ldy";
  69. print_r(compact("name",$arr));
  70. echo "<hr style='color:red'>";
  71. $arr=[6,2,3,5,4,0];
  72. print_r(array_reverse($arr));
  73. sort($arr);//对数组按大小就行排序;返回布尔值
  74. print_r($arr);
  75. //ksort()对数组键名进行排序返回布尔值
  76. //rsort()对数组逆向排序
  77. //shuffle()对数进行打乱排序;
  78. //usort(arr,func)自定义排序
  79. //uasort()对数组进行排序,并保持键值对不变
  80. // array_intersect — 计算数组的交集;两组数组中相对值的集合
  81. // array_diff — 计算数组的差集,第二个数组-第一个数组,第二个数组中不同值的值;
  82. $arr2=[1,2,3,4,5];
  83. $arr1=[2,4,5,6,7];
  84. $arr=array_diff($arr1,$arr2);
  85. var_dump($arr);
  86. $arr=array_diff($arr2,$arr1);
  87. var_dump($arr);
  88. var_dump(array_intersect($arr1,$arr2));

代码运行结果

更多相关文章

  1. 指向函数指针数组的指针
  2. 函数的定义和调用,函数的参数,函数的返回值,匿名函数(闭包)的申明和调
  3. 数组排序-合并-成员统计-交差并补
  4. PHP常用的数组函数
  5. 数组函数练习
  6. php数组的排序|数组的合并
  7. php学习笔记(数组函数_差集和交集的运算汇总)
  8. 0126-数据类型的转换与检测技术,变量与常用声明及使用
  9. 数据类型的转换、变量与常量声明和使用

随机推荐

  1. 在透明背景PNG周围获得“方形”框阴影。
  2. 如何解决Angular appliacation中“消失”
  3. 基于OpenLayer测量工具的Javascript类定
  4. 隐藏加载更多记录按钮ASP.net MVC Ajax J
  5. Javascript sort()不适用于Chrome中超过10
  6. 五十行javascript代码实现简单的双向数据
  7. 缩放图像后的鼠标位置(比率/比率)
  8. 正则表达式以任何顺序匹配多个模式
  9. 使用javascript或jquery将具有相同id的多
  10. 12个非常有用的JavaScript技巧