博客列表 >php学习:函数

php学习:函数

王小飞
王小飞原创
2020年04月25日 10:24:13740浏览

<?php

1.array_change_key_case() 返回其键均为大写或小写的数组

  1. $age=array("nl"=>"35","fs"=>"98","hg"=>"60");
  2. // CASE_UPPER - 将数组的键转换为大写字母。
  3. $ages = (array_change_key_case($age,CASE_UPPER));
  4. printf('<pre>%s</pre><hr>', print_r($ages, true));
  5. //CASE_LOWER - 默认值。将数组的键转换为小写字母
  6. $ages = (array_change_key_case($age,CASE_LOWER));
  7. printf('<pre>%s</pre><hr>', print_r($ages, true));

2.array_chunk() 把一个数组分割为新的数组块。

  1. $cars=array("Volvo","BMW","Toyota","Honda","Mercedes","Opel");
  2. //下面括号里面写3 就是3个内容分一个数组块 写2就是2个内容为一个数组块 3后面加true - 保留原始数组中的键名。
  3. $carss = array_chunk($cars,3);
  4. printf('<pre>%s</pre><hr>', print_r($carss, true));

3.array_column() 返回输入数组中某个单一列的值。

  1. // 可能从数据库中返回数组
  2. $a = array(
  3. array(
  4. 'id' => 5698,
  5. 'first_name' => 'Peter',
  6. 'last_name' => 'Griffin',
  7. ),
  8. array(
  9. 'id' => 4767,
  10. 'first_name' => 'Ben',
  11. 'last_name' => 'Smith',
  12. ),
  13. array(
  14. 'id' => 3809,
  15. 'first_name' => 'Joe',
  16. 'last_name' => 'Doe',
  17. )
  18. );
  19. // $a为原始内容 last_name是要显示的键名
  20. $last_names = array_column($a, 'last_name');
  21. printf('<pre>%s</pre><hr>', print_r($last_names, true));

4.array_combine() 通过合并两个数组(一个为键名数组,一个为键值数组)来创建一个新数组。

  1. $fname=array("Peter","Ben","Joe");
  2. $age=array("35","37","43");
  3. //第一个为键名数组,第二个为键值
  4. $c=array_combine($fname,$age);
  5. printf('<pre>%s</pre><hr>', print_r($c, true));

5.array_fill() 用给定的键值填充数组。

  1. // 第一个参数为起始值 第二个参数为填充数量 第三个参数为填充内容
  2. $a1=array_fill(2,5,"blue");
  3. printf('<pre>%s</pre><hr>', print_r($a1, true));

6.array_fill_keys() 用给定的指定键名的键值填充数组。

  1. $keys=array("a","b","c","d");
  2. // 上面的数组为键值 下面第一个为原始内容 第二个为附给的内容
  3. $a1=array_fill_keys($keys,"blue");
  4. printf('<pre>%s</pre><hr>', print_r($a1, true));

7.array_key_exists()检查指定的键名是否存在于数组中。

  1. $a=array("Volvo"=>"XC90","BMW"=>"X5");
  2. if (array_key_exists("Volvo",$a))
  3. {
  4. //检测Volvo是否存在变量a中 存在则返回存在
  5. echo "存在";
  6. }
  7. else
  8. {
  9. // 不存在则返回不存在
  10. echo "不存在";
  11. }
  12. echo '<hr>';

8.array_keys() 返回数组中所有的键名。

  1. $a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");
  2. $as = (array_keys($a));
  3. printf('<pre>%s</pre><hr>', print_r($as, true));

9.array_merge() 把一个或多个数组合并为一个数组。

  1. $a1=array("a"=>"red","b"=>"green");
  2. $a2=array("c"=>"blue","b"=>"yellow");
  3. // 重复的键名会被后面的覆盖
  4. $a12 = (array_merge($a1,$a2));
  5. printf('<pre>%s</pre><hr>', print_r($a12, true));

10.array_unique() 删除数组中重复的值。

  1. $a=array("a"=>"red","b"=>"green","c"=>"red");
  2. $as = (array_unique($a));
  3. printf('<pre>%s</pre><hr>', print_r($as, true));

11.array_filter(): 用回调过滤数组中的单元,返回计算结果为true的元素组成的数组

  1. $arr = [150, 'php',true,[4,5,6], (new class {}), [], null, false, '', 0, '0'];
  2. $res = array_filter($arr,function($item){
  3. return $item;
  4. });
  5. printf('<pre>%s</pre><hr>', print_r($res, true));

12.array_map() 将用户自定义函数作用到给定数组的每个值上,返回新的值。

  1. function myfunction($v)
  2. {
  3. return($v+$v);
  4. }
  5. $a=array(1,2,3,4,5);
  6. $aa = (array_map("myfunction",$a));
  7. printf('<pre>%s</pre><hr>', print_r($aa, true));

// array_map(): 同时处理多个数组

  1. $key = ['user', 'password'];
  2. $values = ['admin', '123456'];
  3. $res = array_map(function($value1, $value2) {
  4. return [$value1 => $value2];
  5. }, $key, $values);
  6. printf('<pre>%s</pre><hr>', print_r($res, true));
  7. echo $res[2]['password'];
  8. echo '<hr>';

13.array_reduce() 通过使用用户自定义函数,迭代地将数组简化为一个字符串,并返回。

  1. function myfunction2($v1,$v2)
  2. {
  3. return $v1 . "<hr>下一个" . $v2;
  4. }
  5. $a=array("小明","小张","小王","小李");
  6. print_r(array_reduce($a,"myfunction2")."<hr>");

14.array_walk() 对数组中的每个成员应用用户函数。

  1. function myfunction3($value,$key)
  2. {
  3. echo "键名 $key 键值 $value<br>";
  4. }
  5. $a=array("a"=>"red","b"=>"green","c"=>"blue");
  6. array_walk($a,"myfunction3");
  7. echo '<hr>';

15.array_slice()返回数组中的选定部分。

  1. $a=array("苹果","香蕉","橘子","榴莲","西瓜");
  2. //第一个为原始数据 第二个是起始位置 第三个是选定几个
  3. print_r(array_slice($a,2,2));
  4. echo '<hr>';

16.array_splice() 把数组中的指定元素去掉并用其它值取代。

  1. $a1=array("a"=>"苹果","b"=>"香蕉","c"=>"橘子","d"=>"榴莲");
  2. //这里把a替换成苹果手机 b替换成香蕉手机 c删除
  3. $a2=array("a"=>"苹果手机","b"=>"香蕉手机","c"=>"");
  4. //下面 第一个为原始数据 2是起始位置 3是替换数量 4是替换内容
  5. array_splice($a1,0,3,$a2);
  6. printf('<pre>%s</pre><hr>', print_r($a1, true));

总结:对于函数的应用 思维上还是有点慢,不知道怎么写案例 和应用场景。另外抽空多看和测试课堂没有讲到的函数

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议