<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// この記事と PHP コードに依存しないプレフィックス</span></span><span>
</span><span><span class="hljs-comment">// たとえば、ここにいくつかの初期化があります、声明,またはサイトのヘッダー出力</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"この部分はテキストとは何の関係もありません\n"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
</span><span><span class="hljs-meta"><?php</span></span><span>
<span class="hljs-comment">/**
* タイトル: PHP それを使用する方法 krsort 多次元ネストされたアレイのキー名を逆順に並べ替える?
*
* 存在する PHP 真ん中,krsort() これは非常に1つ般的に使用される配列関数です,その機能は次のとおりです **キー名** の逆の順序(大部分から小さい)ソート配列,
* キーと値の間の対応する関係を維持します。这对于需要根据キー名做降序处理的数据结构很有帮助。
*
* ### 1つ、krsort 基本的な使用法
* ```php
* $arr = [
* "c" => 3,
* "a" => 1,
* "b" => 2
* ];
*
* krsort($arr);
* print_r($arr);
* ```
* 結果は次のとおりです:
* ```
* Array
* (
* [c] => 3
* [b] => 2
* [a] => 1
* )
* ```
*
* ### 二、多次元配列用
* 假设我们有1つ个多维嵌套数组:
* ```php
* $data = [
* "group3" => [
* "c" => 30,
* "a" => 10,
* "b" => 20
* ],
* "group1" => [
* "x" => 100,
* "z" => 300,
* "y" => 200
* ],
* "group2" => [
* "foo" => "bar",
* "baz" => "qux"
* ]
* ];
* ```
* 如果只对最外层进行キー名逆序排序:
* ```php
* krsort($data);
* print_r($data);
* ```
* 出力トップキーオーダーはなります `group3, group2, group1`。
*
* ### 三つ、多次元配列の再帰的なソート
* 如果我们希望不仅顶层キー名逆序,同时对每1つ层子数组的キー名也逆序,就需要写1つ个递归函数:
*
* ```php
* function recursiveKrsort(array &$array) {
* // 先对当前层的キー名逆序排序
* krsort($array);
*
* // 遍历每1つ项,値がまだ配列である場合,再帰コール
* foreach ($array as &$value) {
* if (is_array($value)) {
* recursiveKrsort($value);
* }
* }
* }
*
* // 使用の例
* recursiveKrsort($data);
* print_r($data);
* ```
*
* それで,数组真ん中的所有层级都会按照キー名逆序排序。
*
* ### 4、要約します
* - 使用 `krsort()` 可以轻松实现1つ维数组的キー名逆序排序。
* - 多次元配列用,再帰関数は、レイヤーごとに処理できます,实现全局的キー名逆序。
* - この方法は、構成データに適しています、分组数据等需要按照キー名进行排序展示的场景。
*/</span>
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>