配列内の順序値を定義するのではなく、 PHPを使用してこの配列を昇順に並べ替えることはできますか?配列をソートするPHPにメモリ文字列が含まれています
<?php
$memories = array('32GB', '64GB', '128GB', '16GB');
?>
ありがとう!
更新:PHP 5.3
配列内の順序値を定義するのではなく、 PHPを使用してこの配列を昇順に並べ替えることはできますか?配列をソートするPHPにメモリ文字列が含まれています
<?php
$memories = array('32GB', '64GB', '128GB', '16GB');
?>
ありがとう!
更新:PHP 5.3
PHP < = V5.3
チェックアウトnatsort()
$memories = array('32GB', '64GB', '128GB', '16GB');
natsort($memories);
print_r($memories); // Array ([3] => 16GB [0] => 32GB [1] => 64GB [2] => 128GB)
PHP> = V5.4を使用して
確かにsort()とSORT_NATURAL
フラグで行うことができます。
<?php
$memories = array('32GB', '64GB', '128GB', '16GB');
sort($memories, SORT_NATURAL);
print_r($memories); // [0] => '16GB', [1] => '32GB', [2] => '64GB', [3] => '128GB'
これをPHP 5.3で動作させる別の方法はありますか? 5.4(ステージング)でテストされ、うまくいきました。しかし、我々のプロダクションサーバはまだ5.3 – ln9187
を使用しています。 'sort()'関数は "PHP 4、PHP 5、PHP 7"を扱います。プロダクションサーバーでテストしましたか? 5.3で動かない理由はありません。別の注意点として、あなたのdev/prodサーバは同じバージョンのPHP(MySQLなど)を実行していなければなりません。xのあるバージョンでテストし、別のバージョンのxにデプロイすると致命的な結果になる可能性があります。 – Marcus
これはそれが捨てたものです: 'NO未定義の定数の使用SORT_NATURAL - 5.3の' SORT_NATURAL 'を行番号4で仮定しました – ln9187
http://php.net/manual/en/function.sort.php – Marcus
を確認し、アレイ内のすべての値は、常にGBになりますか?それは明らかにソリューションにとって非常に重要です。 – Chris
@chrisはい、そうです。 – ln9187