位置: 编程技术 - 正文

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

  • 土地入账成本包含哪些
  • 纳税人办理退税流程
  • 公司减免社保到几月份
  • 对方只能开普票怎么办
  • 一般纳税人印花税是季报还是月报
  • 个人所得税里累计专项扣除是什么意思
  • 应付票据和应付账款有什么区别
  • 转让固定资产发生的费用可以税前扣除吗
  • 企业所得税清算报备表清算结束日
  • 快消品行业成本结转方法
  • 固定资产折旧财务
  • 生产经营期间固定资产报废清理的净损失
  • 委托开发的软件产品即征即退
  • 存在标的的资产是什么意思
  • 普票丢失用第一联的复印件入账可以么
  • 进口的原材料没有发票
  • 月末收到一批b材料,结算凭证未到,估价50000
  • 税控设备维修费怎么算
  • 增值税小规模纳税人的税率
  • 增值税返还收入冲减进项税
  • 零售环节包括哪些
  • 开具的红字发票金税三期怎么报税?
  • 分包给总包开什么发票
  • 事业单位是否属于中小企业
  • 职工教育经费取得证件之后补助多少钱
  • 企业加入的协会有哪些
  • 固定资产的折旧从什么时候开始
  • 收到工会经费返还如何做账
  • bios设置技巧
  • 奖金属于工资吗?要交税吗?
  • 收回已核销的坏账并入账
  • 不缴或少缴应纳税款的行为属于
  • 非盈利组织捐赠现金支需要什么资料
  • 上个月退货会计分录
  • 如何让电脑安全
  • 购进的包装物怎么入库
  • 我国现行的关税税率种类及适用
  • PHP:file_put_contents()的用法_Filesystem函数
  • 年终结算啥意思
  • 施工单位代建收费标准
  • pnp算法简介与代码解析
  • vscode配置r
  • react避免子组件更新
  • c+c#
  • 农民专业合作组织
  • 红票申请单怎么开
  • 预提费用做账的会计分录
  • 请问如何在
  • 母子公司之间借款要交税吗
  • 小微企业免税额按1%还是3%确认收入
  • 一般纳税人认定标准
  • 发票开的是推广服务费计入什么费用?
  • 仓储费计入哪个部门的费用
  • 处置长投其他权益变动要转损益吗
  • 银企对账操作流程
  • 本期应补退税额是什么意思
  • 低值易耗品与固废的区别
  • sqlserver1053怎么解决
  • sqlserver 临时表 准备
  • 加快Vista中多线程下载速度
  • win7操作系统在哪儿卖
  • win7旗舰版系统激活码
  • 不小心修改了注册表怎么还原
  • centos7 tcp6
  • 开启电脑上帝模式
  • windows8鼠标没反应怎么办
  • linux修改文件权限
  • windows10已激活
  • win10更新后qq打不开
  • linux如何查看用户的信息
  • unity优化方案
  • OpenGl的glMatrixMode()函数理解
  • excel初始化时出错
  • 查找最近文件操作记录
  • 批处理清除保留扇区
  • unity at
  • Python中的def
  • 税纳税申报表
  • 江苏省国地税合并
  • 黄石市地方税务局人工客服电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设