2

次のコードでは、リンゴの後に Banana を配置する必要がありますが、代わりに末尾に移動します。

$json='{"apple":null,"orange":["s","s2"],"pear":null}';

$json=json_decode($json,true);

$json['Banana']=NULL;

ksort ($json, SORT_NATURAL | SORT_FLAG_CASE);

print_r($json);
4

2 に答える 2

0
function natksort(&$array) {
    $keys = array_keys($array);
    natcasesort($keys);

    foreach ($keys as $k) {
        $new_array[$k] = $array[$k];
    }

    $array = $new_array;
    return true;
}

$json='{"apple":null,"orange":["s","s2"],"pear":null}';
$json=json_decode($json,true);
$json['Banana']=NULL;

natksort($json);

print_r($json);

結果:

Array
(
    [apple] => 
    [Banana] => 
    [orange] => Array
        (
            [0] => s
            [1] => s2
        )

    [pear] => 
)
于 2013-05-04T18:33:16.830 に答える
0

SORT_NATURALSORT_FLAG_CASEPHPバージョン> 5.4.0でのみ機能します

ここから: http://www.php.net/manual/en/function.sort.php

変更ログで

5.4.0   Added support for SORT_NATURAL and SORT_FLAG_CASE as sort_flags
于 2013-05-04T18:16:03.353 に答える