> php教程 > php手册 > 본문

php 实用函数,php函数

WBOY
풀어 주다: 2016-06-13 08:42:27
원래의
1247명이 탐색했습니다.

php 实用函数,php函数

第一次随笔,写一些自己工作当中比较实用的函数吧。

数组函数:

1 array_column --返回数组当中指定的一列

  用法一:返回数组当中指定的一列

  应用场景:取出全班同学的id,去其他表查询这些同学的其他信息

  好处:减少查询数据库的次数(通过id一次性查出所有信息)

  列子:

    

    $records = array(
        array(
            'id' => 2135,
            'first_name' => 'John',
            'last_name' => 'Doe',
        ),
        array(
            'id' => 3245,
            'first_name' => 'Sally',
            'last_name' => 'Smith',
        )
    );
 
    $first_names = array_column($records, 'id');
    print_r($first_names);

    //结果

    array('2135','3245');

    ?>

  用法二:用二维数组当中的id作为数组的key

  应用场景:通过array['id']取出数据 

  好处:用array_column代替foreach将二维数组当中的id作为数组的key,代码简洁,调用系统函数提高效率

  列子:

    

    $records = array(
        array(
            'id' => 2135,
            'first_name' => 'John',
            'last_name' => 'Doe',
        ),
        array(
            'id' => 3245,
            'first_name' => 'Sally',
            'last_name' => 'Smith',
        )
    );

    //使用foreach

    $records_key = array();

    foreach($records as $k => $v){

      $records_key[$v['id']] = $v; 

    }

    print_r($first_names);
     //调用array_column
    $records_key = array_column($records, NULL,'id');
    print_r($first_names);

    ?>

    //结果

    Array(

      [2135] => Array(
        [id] => 2135
        [first_name] => John
        [last_name] => Doe
      )

      [3245] => Array(
        [id] => 3245
        [first_name] => Sally
        [last_name] => Smith
      )

    )

    

2 array_multisort --对多个数组或多维数组排序

  用法一:多维数组排序

  应用场景:将数据根据 价格 降序排序,根据 销量 升序排序

  好处:

  列子:

          $data[] = array('price' => 67, 'sale_num' => 2);
      $data[] = array('price' => 86, 'sale_num' => 1);
      $data[] = array('price' => 85, 'sale_num' => 6);
      $data[] = array('price' => 98, 'sale_num' => 2);
      $data[] = array('price' => 86, 'sale_num' => 6);
      $data[] = array('price' => 67, 'sale_num' => 7);

      // 取得列的列表

      $price= array_column($data,'price');

      $sale_num= array_column($data,'sale_num');

      // 把 $data 做为最后一个参数,以通用键排序

      array_multisort($price, SORT_DESC, $sale_num, SORT_ASC, $data);
    ?>

    //结果 

     price | sale_num
    -------+--------
        98 |       2
        86 |       1
        86 |       6
        85 |       6
        67 |       2
        67 |       7
로그인 후 복사

  未完待续!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿