PHP で配列をソートし、インデックス関係を維持する方法

WBOY
リリース: 2024-03-19 13:22:01
転載
345 人が閲覧しました

php editor Banana は、PHP で配列をソートし、インデックス関係を維持する方法を紹介します。配列のソートは一般的な操作ですが、データの整合性と対応性を確保するために、ソートされた配列で元のインデックス関係を維持したい場合があります。 PHP では、いくつかの組み込み関数とテクニックを使用してこの目標を達成し、ソートされた配列が元の配列のインデックスに対応するようにすることができます。次に、この問題について一緒に議論し、PHP 配列のソート機能を誰もがより適切に適用できるようにしたいと考えています。

PHP 配列のソートとインデックス関係の維持

######導入######

php では、配列はデータの保存と管理に使用される動的な データ構造

です。配列のソートはデータ処理における一般的な操作であり、ソート後に配列インデックス間の関係を維持する必要がある場合があります。

ksort()関数

ksort() 関数は連想配列をソートするために使用され、キーの値に基づいて配列を昇順にソートします。キーが

string の場合、順序は文字列のアルファベット順に基づきます。

$arr = ["名前" => "ジョン"、"年齢" => 30、"都市" => "ニューヨーク"]; ksort($arr); print_r($arr);

出力: ###配列 ( [年齢] => 30 [都市] => ニューヨーク [名前] => ジョン )

ログイン後にコピー
ログイン後にコピー
krsort()関数

krsort() 関数は ksort() 関数に似ていますが、連想配列を降順に並べ替えます。 
ログイン後にコピー

$arr = ["名前" => "ジョン"、"年齢" => 30、"都市" => "ニューヨーク"]; krsort($arr); print_r($arr); 出力:

###配列 ( [名前] => ジョン [都市] => ニューヨーク [年齢] => 30 )

asort() 関数
ログイン後にコピー

asort() 関数は、配列内の値に基づいて配列を昇順に並べ替えるのに使用されます。値が文字列の場合は、文字列のアルファベット順に並べ替えられます。
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
$arr = [10, 5, 2, 8, 4]; 並べ替え($arr); print_r($arr);

出力: ###配列 ( [2] => 2 [4] => 4 [5] => 5 [8] => 8 [10] => 10 )

arsort() 関数
ログイン後にコピー
ログイン後にコピー

arsort() 関数は asort() 関数に似ていますが、配列を降順に並べ替えます。

$arr = [10, 5, 2, 8, 4];
arsort($arr);
print_r($arr);
ログイン後にコピー

出力: ###配列 ( [10] => 10 [8] => 8 [5] => 5 [4] => 4 [2] => 2 )

sort()関数

ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
sort() 関数は配列をソートするために使用され、配列内の値を昇順にソートします。ただし、sort() 関数は配列のインデックスを再作成するため、インデックス関係が失われます。

$arr = ["名前" => "ジョン"、"年齢" => 30、"都市" => "ニューヨーク"]; ソート($arr); print_r($arr);
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
出力:

###配列 ( [0] => ジョン [1] => ニューヨーク [2] => 30 )

カスタム比較関数を使用する

カスタム比較関数を通じて配列を並べ替え、インデックス関係を維持するには、uasort() 関数または usort() 関数を使用できます。 
ログイン後にコピー
関数比較($a, $b) {
return strnatcmp($a["名前"], $b["名前"]);
}

$arr = ["名前" => "ジョン", "年齢" => 30, "都市" => "ニューヨーク"];
uasort($arr, "比較");
print_r($arr);
ログイン後にコピー

出力:

###配列 ( [名前] => ジョン [都市] => ニューヨーク [年齢] => 30 )
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

要約

ksort()、krsort()、asort()、arsort()、およびカスタム比較関数を使用して、PHP 配列をソートするときにインデックス関係を維持できます。これは、並べ替え後に元のインデックスにアクセスする必要がある場合に便利です。

以上がPHP で配列をソートし、インデックス関係を維持する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:lsjlt.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!