php 实用函数
第一次随笔,写一些自己工作当中比较实用的函数吧。
数组函数:
1 array_column --返回数组当中指定的一列
用法一:返回数组当中指定的一列
应用场景:取出全班同学的id,去其他表查询这些同学的其他信息
好处:减少查询数据库的次数(通过id一次性查出所有信息)
列子:
<?php
$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,代码简洁,调用系统函数提高效率
列子:
<?php
$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 --对多个数组或多维数组排序
用法一:多维数组排序
应用场景:将数据根据 价格 降序排序,根据 销量 升序排序
好处:
列子:
<?php
$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 实用函数的更多相关文章
- 你真的会玩SQL吗?实用函数方法汇总
你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接.外连接 你真的会玩SQL吗?三范式.数据完整性 你真的会玩SQL吗?查询指定节点及其所有父节 ...
- 转:Delphi 6 实用函数
来自: daocaoren0824, 时间: -- ::, ID: 再给你一份 程序员实用函数 {▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎} {▎ ▎} {▎ 大 ...
- 你真的会玩SQL吗?实用函数方汇总
http://www.cnblogs.com/zhangs1986/p/4917800.html 实用函数方法 由于有些知识很少被用到,但真需要用时却忘记了又焦头烂额的到处找. 现在将这些‘冷门“却有 ...
- 分享PHP中的10个实用函数
分享PHP中的10个实用函数 PHP的功能越来越强大,里面有着非常丰富的内置函数.资深的PHP程序员对它们可能都很熟悉,但很多参加PHP培训的PHP初学者,仍然对一些非常有用的函数不太熟悉.这篇文章里 ...
- ORACLE实用函数之一 ratio_to_report的简单使用
应用场景: 查询学生成绩级别(ABCDE)个人数和所占百分比(案列简单,勿喷). 表结构: create or replace table stu_grade( id varchar2(36), le ...
- jQuery碎语(4) 实用函数
6.实用函数 ● 修剪字符串 $('#id').val($.trim($('#someid').val())) ● 遍历集合 可能这样写: var anArray = ['one','two']; f ...
- python数据类型及有关的实用函数
本系列例子使用python3.x, 编辑时间:2019-09-03,23:03:36 python以“对象引用”来存储数据,以对象来表达数据,每个对象都具有身份,对象和值. 实用函数: id(): 查 ...
- MinkowskiEngine实用函数和类
MinkowskiEngine实用函数和类 sparse_quantize MinkowskiEngine.utils.sparse_quantize(coords, feats=None, labe ...
- MATLAB 实用函数
MATLAB个人工具箱(MATLAB) mymail.m 可以利用MATLAB发送邮件(支持附件和群发),非常实用的函数,适用于:耗时很长的脚本完成后通知作者:外加定时器后用于信息推送:家庭监视器紧急 ...
随机推荐
- 将汉字转化为拼音,正则表达式和得到汉字的Unicode编码
一:上图,不清楚的看代码注解,很详细了 二:具体代码 窗体代码 using System; using System.Collections.Generic; using System.Compone ...
- [Locked] Paint House I & II
Paint House There are a row of n houses, each house can be painted with one of the three colors: red ...
- Spring和Struct整合的三个方法
1.使用Spring 的 ActionSupport .2.使用Spring 的 DelegatingRequestProcessor 类.3.全权委托. 无论用那种方法来整合第一步就是要为strut ...
- Redis 与 Memcached 的区别
[转]Redis 与 Memcached 的区别 传统 MySQL + Memcached 架构遇到的问题 实际上 MySQL 是适合进行海量数据存储的,通过 Memcached 将热点数据加 ...
- 【bzoj2434】[Noi2011]阿狸的打字机
题目描述 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机.打字机上只有28个按键,分别印有26个小写英文字母和'B'.'P'两个字母.经阿狸研究发现,这个打字机是这样工作的:l 输入小写字 ...
- iOS10相机等崩溃
当使用iOS10使用相机时会出现崩溃 This app has crashed because it attempted to access privacy-sensitive data withou ...
- 《Windows编程零基础学》第零节
首先很开心申请到了这一个专栏<Windows编程零基础学> 这是第一篇文章,在这里,我将讲述一些基础的知识. 什么是Windows编程 所谓Windows编程就是在Windows平台上开发 ...
- [Unity3d][NGUI]两种思路解决AssetBundle的依赖关系.
接上文. 使用上文中的AssetBundle打包方式生成的文件包括了依赖关系中的文件. 一般的使用中并不会发现什么问题. 可是当配合NGUI的时候,使用dynamicFont时打包AssetBundl ...
- 关于DPM(Deformable Part Model)算法中模型结构的解释
关于可变部件模型的描写叙述在作者[2010 PAMI]Object Detection with Discriminatively Trained Part Based Models的论文中已经有说明 ...
- jquery ajax 提交表单(file && input)
用到的插件 jquery.js jquery.form.js[http://malsup.github.io/jquery.form.js] 提交页面 <form enctype="m ...