PHP 多维数组的排序问题 根据二维数组中某个项排序_PHP
PHP内置函数 array_multisort 要求每个数组大小一样
$areas是地区的二维数组,包含人数和次数,现在要按这2种数进行降序排序
复制代码 代码如下:
foreach($areaArray as &$areas) {
$times = $numbers = array();
foreach($areas as $province => $v) {
$times[$province] = $v['times'];
$numbers[$province] = $v['numbers'];
}
array_multisort($times, SORT_DESC, $numbers, SORT_DESC, $areas);
}
比如有个多为数组:
复制代码 代码如下:
$arr = array(
‘d' => array(‘id' => 5, ‘name' => 1, ‘age' => 7),
‘b' => array(‘id' => 2,'name' => 3,'age' => 4),
‘a' => array(‘id' => 8,'name' => 10,'age' => 5),
‘c' => array(‘id' => 1,'name' => 2,'age' => 2)
);
需要对二维数组中的 age 项排序。
需要用到PHP的内置函数 array_multisort(),可以看手册。
自定义函数:
复制代码 代码如下:
function multi_array_sort($multi_array,$sort_key,$sort=SORT_ASC){
if(is_array($multi_array)){
foreach ($multi_array as $row_array){
if(is_array($row_array)){
$key_array[] = $row_array[$sort_key];
}else{
return false;
}
}
}else{
return false;
}
array_multisort($key_array,$sort,$multi_array);
return $multi_array;
}
//处理
echo “
print_r(multi_array_sort($arr,'age'));exit;
//输出
Array
(
[c] => Array
(
[id] => 1
[name] => 2
[age] => 2
)
[b] => Array
(
[id] => 2
[name] => 3
[age] => 4
)
[a] => Array
(
[id] => 8
[name] => 10
[age] => 5
)
[d] => Array
(
[id] => 5
[name] => 1
[age] => 7
)
)
written by 大宇
0

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











1 次元配列は sort() 関数を使用してソートされ、2 次元配列は usort() 関数を使用して内部要素によってソートされ、高次元配列は多層ネストされた usort() 関数を使用して階層要素によってソートされます。分解の問題を層ごとに解決することが鍵となります。

行列は、行と列に配置された一連の数値です。 m 行 n 列の行列は mXn 行列と呼ばれ、m と n はその次元と呼ばれます。行列は、リストまたは NumPy 配列を使用して Python で作成された 2 次元配列です。一般に、行列の乗算は、最初の行列の行と 2 番目の行列の列を乗算することで実行できます。ここで、最初の行列の列数は 2 番目の行列の行数と等しくなければなりません。入力シナリオと出力シナリオ 2 つの行列 A と B があるとします。これら 2 つの行列の次元は、それぞれ 2X3 と 3X2 です。乗算後の結果の行列は 2 行 1 列になります。 [b1,b2][a1,a2,a3]*[b3,b4]=[a1*b1+a2*b2+a3*a3][a4,a5,a6][b5,b6][a4*b2+a

PHP で複数の配列を多次元配列にマージする方法 PHP 開発では、複数の配列を 1 つの多次元配列にマージする必要がよく発生します。この操作は、大規模なデータ コレクションを操作する場合に非常に便利で、データをより適切に整理して処理するのに役立ちます。この記事では、この操作を実現するためのいくつかの一般的な方法を紹介し、参考用のコード例を添付します。方法 1: array_merge 関数を使用する. array_merge 関数は、PHP でよく使用される配列結合関数であり、複数の配列を結合できます。

配列は、PHP で非常に一般的なデータ型です。場合によっては、多次元配列が関係する状況に直面することがありますが、この場合、すべての要素に対して同じ操作を実行する必要がある場合は、array_walk_recursive() 関数を使用できます。 array_walk_recursive() 関数は、PHP の非常に強力な再帰関数で、多次元配列に対して再帰操作を実行するのに役立ちます。多次元配列の各要素を再帰的に走査し、それに対応する操作を実行できます。

多次元 PHP 配列を反転する 2 つの効果的な方法: array_reverse() 関数を再帰的に使用: ネストされた各配列の要素を再帰的に反転します。 PHP7 の array_reverse() 関数: array_reverse() 関数の新しいオーバーロードを使用して、多次元配列を反転します。

PHP で多次元配列をソートする方法 PHP では、配列は非常に一般的かつ重要なデータ構造であり、一部の複雑なデータ処理では多次元配列がより頻繁に使用されます。ただし、多次元配列のソートは難しい場合があります。この記事では、PHP で多次元配列を並べ替える方法と、具体的なコード例を示します。始める前に、まず多次元配列の構造を理解しましょう。多次元配列とは、配列内の要素も配列であり、入れ子構造を形成していることを意味します。例: $st

PHP 配列の詳細な説明: 多次元配列、連想配列などの包括的な分析 PHP の配列は、複数のデータ項目を格納し、インデックスを介してそれらにアクセスできる非常に重要なデータ構造です。 PHP では、配列はインデックス付き配列、連想配列、多次元配列などのさまざまなタイプに分類でき、それぞれのタイプには独自の用途と特性があります。この記事では、配列の宣言、アクセス、走査、操作の方法など、さまざまな種類の PHP 配列について詳しく説明し、読者の理解を助ける具体的なコード例を提供します。 1. インデックス配列のインデックス番号

PHP で多次元配列をループする方法 PHP では、配列は複数の値を保持できる強力なデータ構造です。多次元配列は配列をさらに拡張したもので、複数の配列に対応できます。ループ トラバーサルは、多次元配列を扱うときの一般的な操作メソッドです。この記事では、さまざまなループ メソッドを使用して PHP で多次元配列をトラバースする方法と、対応するコード例を紹介します。 for ループを使用して多次元配列を走査することは、最も一般的で広く使用されているループ方法の 1 つであり、複数の for ループをネストできます。
