亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法按屬性名稱對對象數組進行排序

無法按屬性名稱對對象數組進行排序

PHP
鴻蒙傳說 2023-04-21 09:51:10
我有這個數組:$array = array(    ['name' => 'Indor Swimming Pool'],    ['name' => 'abracadabra'],);我想按字母順序排序,所以我做了:usort($array, function($a, $b){    return strcmp($a['name'], $b['name']);});但是當我轉儲它時:var_dump($array);我得到:array(2) {  [0]=>  array(1) {    ["name"]=>    string(19) "Indor Swimming Pool"  }  [1]=>  array(1) {    ["name"]=>    string(11) "abracadabra"  }}這是不正確的,abracadabra應該先
查看完整描述

2 回答

?
海綿寶寶撒

TA貢獻1809條經驗 獲得超8個贊

根據 ASCII 表 chr?I在前,然后是a?chr

ASCII 表

所以在這里你的數組實際上是按字母順序排序以獲得所需的結果你需要按降序對數組進行排序

<?php

$data = array(

? ? ['name' => 'Indor Swimming Pool'],

? ? ['name' => 'abracadabra'],

);

arsort($data);

?>

輸出


Array

(

? ? [1] => Array

? ? ? ? (

? ? ? ? ? ? [name] => abracadabra

? ? ? ? )


? ? [0] => Array

? ? ? ? (

? ? ? ? ? ? [name] => Indor Swimming Pool

? ? ? ? )


)


查看完整回答
反對 回復 2023-04-21
?
慕森卡

TA貢獻1806條經驗 獲得超8個贊

它按預期工作。這個順序的原因是'a'實際上在ASCII中的'I'之后。



查看完整回答
反對 回復 2023-04-21
  • 2 回答
  • 0 關注
  • 126 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號