私は257-1024,1-256,1025-2056の範囲の値の配列を持っています。これらの値はすべて動的に生成され、ランダムに配置されます。出力を行う前に、数値のASC順に並べ替える必要があります。 sortまたはnatsort関数を使用すると、出力は1-256,1025-2056,257-1024として出力されます。これはPHPが文字列として認識するためです。 1〜256,257〜1024,1025〜2056、PHP並べ替え文字列値の範囲の配列を数字で並べ替え
1
A
答えて
1
natsort() functionここでは、数値の範囲でソート/整列できる組み込み関数がありますか?
$array = array("257-1024", "1-256", "1025-2056");
$a = natsort($array);
echo "<pre>";
print_r($array);
echo "</pre>";
出力:
Array
(
[1] => 1-256
[0] => 257-1024
[2] => 1025-2056
)
この情報がお役に立てば幸いです。
0
usort()を使用すると、次のようにすることができます。
$array = ['257-1024', '1025-2056', '1-256'];
usort($array, function($a, $b){
return ((int)explode('-', $a)[1] < (int)explode('-', $b)[0]) ? -1 : 1;
});
print_r($array);
出力は以下のとおりです。
Array
(
[0] => 1-256
[1] => 257-1024
[2] => 1025-2056
)
関連する問題
- 1. ElasticSearchの文字列の並べ替え
- 2. 文字列ベクトルの並べ替え
- 3. マップの文字列キーを数値で並べ替える
- 4. PHPの配列で並べ替える
- 5. 文字列配列のカスタム並べ替えのパフォーマンスを向上
- 6. 日付範囲でカスタムオブジェクトの配列を並べ替える
- 7. bash:数値で文字列を並べ替える
- 8. トリム並べ替え配列
- 9. バイナリ文字列比較/並べ替え対辞書文字列比較/並べ替え
- 10. 複数配列の並べ替え
- 11. 配列の複素数配列を値で並べ替え
- 12. Perl:文字列内の文字を並べ替える
- 13. 文字と長さで文字列を並べ替える
- 14. 文字列を特殊文字で並べ替える
- 15. 文字の配列を並べ替える
- 16. 並べ替えで並べ替え
- 17. 並べ替えの方法配列インデックスで並べ替えられたリスト
- 18. jqGrid列の並べ替え
- 19. 配列の最初の3文字で配列を並べ替える
- 20. オブジェクトの配列を並べ替える
- 21. F#タプルの配列を並べ替え
- 22. NSIndexPathsの配列を並べ替える
- 23. 配列をソートで並べ替え
- 24. linq2SQL + [並べ替え基準文字列値
- 25. アルファベット順の配列の並べ替え
- 26. アルファベット順の配列の並べ替え
- 27. カスタムクラスオブジェクトの配列の並べ替え
- 28. 2D Javascriptの配列の並べ替え
- 29. ポインタの配列の並べ替え
- 30. 配列の不明な値をPHPで並べ替える
あなたは http://php.net/manual/en/function.usort.php usort PHPを使用して、独自のソート関数を作成することができます – shantanu