位置: 编程技术 - 正文

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数组函数,选班长)

  • 增值税专用发票抵扣期限
  • 即征即退进项税额转出
  • 个体摊贩
  • 一般纳税人资格证明在哪里查询
  • 资产减值准备的计提方法
  • 企业所得税季度预缴怎么计算
  • 季度预交所得税可以弥补上年度亏损吗
  • 向关联企业捐赠现金500万元,假定按照税法规定
  • 企业向个人借款合同模板
  • 资产负债表不平的原因有哪些
  • 增值税申报表更正情况说明怎么写
  • 预付账款属于什么账户
  • 补偿性余额利息的计算公式
  • 以前月度费用当期怎么入账合适?
  • 从联营企业分回利润可以在税前扣除吗
  • 对同一家企业的定义
  • 公司集体活动的目的与意义
  • 房地产企业预收款什么时候确认收入
  • 应付职工薪酬科目的应用
  • 固定资产的确认条件有哪些
  • 苹果7充电设置在哪里
  • 建账时的库存怎么做账
  • 公司给员工交纳社保
  • 股东分红的会计科目怎么做
  • deepin如何
  • 广告费和业务宣传费15%还是30%
  • 苹果发布macOS13.6
  • 自己给笔记本更换硬盘
  • 不动产经营租赁包括哪些内容
  • uniapp 安卓原生
  • 承包安装工程怎么报价
  • 哪些费用可以用医保
  • php获取地理位置
  • batch size 大小
  • 企业研发费用加计扣除最新政策
  • php2008
  • 借应付职工薪酬贷其他应收款
  • java代理类是什么
  • 收到汇算清缴后怎么处理
  • 其他资本公积核算科目
  • 销售发票重复开库存商品如何处理?
  • 典当公司收到房款怎么办
  • javagui框架
  • 免税收入和不征税收入有何区别
  • 堤围防护费如何计算
  • 进口化妆品品牌大全
  • 应交销项税转出分录
  • 已开票未收款怎么报税
  • 税控系统专用设备抵减增值税账务处理
  • 以前年度的固定资产入成原材料了怎么办
  • 短期借款计提利息计入什么科目
  • 劳务费属于哪个会计科目
  • 空调销售又安装如何税收筹划
  • 公司购买垃圾袋纸巾摘要怎么写好
  • 企业建账可以处于哪几个阶段
  • 如何为报表指定数据源?
  • windows如何显示键盘
  • windows启动失败是怎么回事
  • 删除命令windows
  • win8系统怎样
  • ubuntu 安装zsh
  • surface 优惠
  • 苹果电脑mac系统怎么升级
  • win1021年更新
  • 关于windows的说法正确的是
  • oeloader.exe - oeloader是什么进程 有什么用
  • windows打开
  • easyui下拉列表
  • jquery实现复选框全选
  • firefox background-image垂直平铺问题的解决方法
  • unity3d怎么移动物体
  • jquery简单例子
  • javascript object oriented 面向对象编程初步
  • 基于jQuery的ajax方法封装
  • js实现vue
  • python迭代器iterator
  • 注销税务说明
  • 宁波税务局网上办税服务厅
  • 外地户口在绍兴读小学
  • 免除滞纳金的条件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设