位置: 编程技术 - 正文

PHP数组函数usort()的用法(php中数组的常用函数及用法)

编辑:rootadmin

推荐整理分享PHP数组函数usort()的用法(php中数组的常用函数及用法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php中数组的常用函数及用法,php数组函数面试题,php数组函数大全,php数组函数实现机选双色球,php数组函数大全,php数组函数大全,php数组函数面试题,php数组函数有哪些,内容如对您有帮助,希望把文章链接给更多的朋友!

usort

(PHP 4, PHP 5)

usort — 使用用户自定义的比较函数对数组中的值进行排序

说明

bool usort ( array &$array , callable $cmp_function )

本函数将用用户自定义的比较函数对一个数组中的值进行排序。如果要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。

Note:

如果两个成员比较结果相同,则它们在排序后的数组中的顺序未经定义。

Note: 此函数为 array 中的元素赋与新的键名。这将删除原有的键名,而不是仅仅将键名重新排序。

参数

array

输入的数组

cmp_function

在第一个参数小于,等于或大于第二个参数时,该比较函数必须相应地返回一个小于,等于或大于 0 的整数。

int callback ( mixed $a, mixed $b ) Caution

Returning non-integer values from the comparison function, such as float, will result in an internal cast to integer of the callback&#;s return value. So values such as 0. and 0.1 will both be cast to an integer value of 0, which will compare such values as equal.

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE。

更新日志

版本 说明 4.1.0 引进了新的排序算法。用户自定义函数 cmp_function 将不再保留这些单元的原有顺序。

范例PHP数组函数usort()的用法(php中数组的常用函数及用法)

Example #1 usort() 例子

<?phpfunctioncmp($a,$b){if($a==$b){return0;}return($a<$b)?-1:1;}$a=array(3,2,5,6,1);usort($a,"cmp");foreach($aas$key=>$value){echo"$key:$valuen";}?>

以上例程会输出:

Note:

很明显在这个小例子中用 sort() 函数更合适。

Example #2 使用多维数组的 usort() 例子

<?phpfunctioncmp($a,$b){returnstrcmp($a["fruit"],$b["fruit"]);}$fruits[0]["fruit"]="lemons";$fruits[1]["fruit"]="apples";$fruits[2]["fruit"]="grapes";usort($fruits,"cmp");while(list($key,$value)=each($fruits)){echo"$fruits[$key]:".$value["fruit"]."n";}?>

当排序多维数组时,$a 和 $b 包含到数组第一个索引的引用。

以上例程会输出:

Example #3 usort() example using a member function of an object

<?phpclassTestObj{var$name;functionTestObj($name){$this->name=$name;}/*Thisisthestaticcomparingfunction:*/staticfunctioncmp_obj($a,$b){$al=strtolower($a->name);$bl=strtolower($b->name);if($al==$bl){return0;}return($al>$bl)?+1:-1;}}$a[]=newTestObj("c");$a[]=newTestObj("b");$a[]=newTestObj("d");usort($a,array("TestObj","cmp_obj"));foreach($aas$item){echo$item->name."n";}?>

以上例程会输出:

Example #4 usort() example using a closure to sort a multi-dimensional array

<?php$array[0]=array(&#;key_a&#;=>&#;z&#;,&#;key_b&#;=>&#;c&#;);$array[1]=array(&#;key_a&#;=>&#;x&#;,&#;key_b&#;=>&#;b&#;);$array[2]=array(&#;key_a&#;=>&#;y&#;,&#;key_b&#;=>&#;a&#;);functionbuild_sorter($key){returnfunction($a,$b)use($key){returnstrnatcmp($a[$key],$b[$key]);};}usort($array,build_sorter(&#;key_b&#;));foreach($arrayas$item){echo$item[&#;key_a&#;].&#;,&#;.$item[&#;key_b&#;]."n";}?>

以上例程会输出:

参见

uasort() - 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联 数组排序函数对比

PHP数组函数sort()的用法 sort(PHP4,PHP5)sort对数组排序说明boolsort(array&$array[,int$sort_flags=SORT_REGULAR])本函数对数组进行排序。当本函数结束时数组单元将被从最低到最高重新安排。参

PHP数组函数uksort()的用法 uksort(PHP4,PHP5)uksort使用用户自定义的比较函数对数组中的键名进行排序,uksort() 函数将使用用户提供的比较函数对数组中的键名进行排序。如果要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。

PHP数组函数uasort()的用法 uasort(PHP4,PHP5)uasort使用用户自定义的比较函数对数组中的值进行排序并保持索引关联,本函数对数组排序并保持索引和单元之间的关联。主要用于对那些单元顺序很重要的结合数组进行排序。比较函数是用户自定义的。

标签: php中数组的常用函数及用法

本文链接地址:https://www.jiuchutong.com/biancheng/275203.html 转载请保留说明!

上一篇:PHP:xml_get_current_byte_index()的用法_XML解析器函数

下一篇:PHP数组函数sort()的用法(php数组函数,选班长)

  • 居民个税和非居民个税哪个高
  • 向投资者分配的现金股利如何做账
  • 礼品进项怎么做进项转出
  • 收入与支出的差异
  • 个税申报系统跟工资表累计扣除数不一致怎么办
  • 退货折价的账务处理分录
  • 价内税是指
  • 收到公司退货会计分录
  • 建筑行业机械租赁费计入什么科目
  • 职工福利费税前扣除限额
  • 购买商品有运费的分录
  • 以前年度损益调整账务处理分录
  • 记账凭证是否要记账
  • 三证合一后还要去税务局吗
  • 进项税额转出年末要结转吗
  • 过了认证期的发票怎么办
  • 税控维护费的分录
  • 企业收到党建经费 所得税
  • 稿费算税
  • 无需支付的款项需要缴税吗
  • 公司如何为员工缴纳社保
  • 建筑行业收到劳务发票入工程施工科目
  • 开发企业土地使用税计算方法
  • 免征附加税费
  • 王者荣耀怎么解除关系
  • 电脑上加速网页的加速器
  • 消费税和购置税怎么算
  • 汇算清缴资产减值损失怎么填
  • php循环语句
  • 仓储费用结算方式有哪些
  • 备用金借款有利息吗
  • 企业汇算清缴怎么退税
  • ubuntu设置nginx开机启动
  • 股权转让怎么做帐务处理
  • 对公户怎么取备用金
  • 付检测费会计分录
  • 用php编写一个简单的计算器程序
  • 餐费补贴是否计提
  • 工资为0需要申报个税吗
  • 金税盘证书已冻结怎么解决
  • 委托加工代收代缴消费税分录
  • 织梦标签理解
  • 技术转移转化是干什么的
  • 海关缴款书能重开吗
  • 暂估入账后续处理
  • mysql主从配置详解
  • 商品流通企业采购费用
  • 营业总收入和营业利润
  • 劳务费怎么做账务处理
  • 非广告公司可以开广告费发票吗?
  • 库存商品冲回
  • 存量资金上缴财政怎么做账
  • 未交税金免抵退多少税
  • 企业计提坏账准备形成可抵扣暂时性差异
  • 损益类账户借贷方向增减
  • 采购预支款报销流程
  • 确定所开发票的项目的大类别?
  • 什么是权责发生会计处理基础
  • mysql应用案例
  • ubuntu系统如何切换中文
  • win8系统摄像头怎么打开
  • winxp文件夹选项
  • centos6挂载ntfs硬盘
  • centos6.5如何安装
  • win7 桌面空白
  • Win10 Mobile 10586升级后无限重启怎么办 硬重启帮您解决
  • gnome版本
  • perl模块下载
  • 用原生js写项目
  • shell字符串操作命令
  • dos改时间
  • js有哪些作用域,分别是什么意思
  • 本地 node js 启动vue
  • python基础视频教程
  • jquery使用css
  • unity ugui ngui
  • 安卓应用 开发
  • 怎么查其他公司的财务报表
  • 双流税务总局电话
  • 我国国家宪法日是每年的十二月几日
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设