zoukankan      html  css  js  c++  java
  • php的数组的函数

    1.可以将一个二位数组转化成两个一维数组,没有指定键就是默认的索引

    注意二位数组有几种类型,其中最常见的一种是外层循环是一个索引数组,然后内层是一个关联数组。这种通过便利第一层,然后第二层指定关联词就可以剥离开

    foreach ($list as $vo) {
    $dateArr[]=$vo[day];
    $countArr[]=$vo[count];
    }

    如何将下面的二维数组转为一维数组。

    复制代码代码如下:

    $msg = array(
      array(
        'id'=>'45',
        'name'=>'jack'
      ),
      array(
        'id'=>'34',
        'name'=>'mary'
      ),
      array(
        'id'=>'78',
        'name'=>'lili'
      ),
    );

    第一种方法:

    复制代码代码如下:

    foreach($msg as $k => $v){
        $ids[] = $id;
        $names[] = $name;
      }

    第二种方法:

    复制代码代码如下:

    $ids = array_column($msg, 'id');
     $names = array_column($msg, 'name');

    以上两种解法print_r($names);后的结果为:

    复制代码代码如下:

    Array(
      [0]=>jack
      [1]=>mary
      [2]=>lili
    )

    注意:array_column();可以有第三个参数,如 $n = array_column($msg, 'name', 'id');

    print_r($n);的结果为:

    复制代码代码如下:

    Array(
      [45]=>jack
      [34]=>mary
      [78]=>lili
    )
    感谢:http://www.jb51.net/article/50410.htm
     
     
    在数组的任意位置插入元素:

    <?php

    function addvtorandp($array,$position,$value){
    $tmp=array();
    for($i=0;$i<=count($array);$i++){
    if($i==$position){
    $tmp[$position]=$value;
    }elseif($i<$position){
    $tmp[$i]=$array[$i];
    }else{
    $tmp[$i]=$array[$i-1];
    }
    }
    return $tmp;
    }

    $a=array("red","green","blue","yellow","brown");

    $a=addvtorandp($a,1,11);

    var_dump($a);

    感谢http://www.kuitao8.com/20150429/3724.shtml

  • 相关阅读:
    标签的讲解
    属性分类
    LeetCode 003. 无重复字符的最长子串 双指针
    Leetcode 136. 只出现一次的数字 异或性质
    Leetcode 231. 2的幂 数学
    LeetCode 21. 合并两个有序链表
    象棋博弈资源
    acwing 343. 排序 topsort floyd 传播闭包
    Leetcode 945 使数组唯一的最小增量 贪心
    Leetcode 785 判断二分图 BFS 二分染色
  • 原文地址:https://www.cnblogs.com/sengling/p/5478612.html
Copyright © 2011-2022 走看看