PHPで配列が正しいかどうかを判断する方法

WBOY
リリース: 2023-05-19 22:56:08
オリジナル
810 人が閲覧しました

PHP では、配列が順序付けされているかどうかを判断する方法がたくさんあります。この記事では、そのうちの 2 つの方法を紹介します。

方法 1: array_multisort 関数を使用する

array_multisort は、複数の配列を同時に並べ替えることができる PHP 関数です。その使用法は次のとおりです。

bool array_multisort ( array &$array1 [, mixed $array1_sort_order = SORT_ASC [, mixed $array1_sort_flags = SORT_REGULAR [, mixed $... ]]] )
ログイン後にコピー

最初のパラメータは並べ替えられる配列であり、後続の各パラメータはオプションであり、並べ替え方法を指定するために使用されます。

array_multisort 関数を使用すると、まず判定対象の配列をソートし、元の配列と比較することができます。 2 つの配列が等しい場合、元の配列の順序が正しいことになります。

これは例です:

function isSorted($array)
{
    $sorted_array = $array;
    sort($sorted_array);
    return $sorted_array == $array;
}
ログイン後にコピー

この例では、配列をパラメーターとして受け入れる関数 isSorted を定義します。この関数は、まず配列を並べ替えてから、元の配列と比較します。 2 つの配列が等しい場合は true を返し、そうでない場合は false を返します。

方法 2: foreach ループを使用する

array_multisort 関数の使用に加えて、foreach ループを使用して、配列が順序付けされているかどうかを判断することもできます。具体的な方法は、配列を走査し、隣接する要素を順番に比較することです。

これは例です:

function isSorted($array)
{
    $length = count($array);
    for ($i = 1; $i < $length; $i++) {
        if ($array[$i - 1] > $array[$i]) {
            return false;
        }
    }
    return true;
}
ログイン後にコピー

この例では、配列をパラメーターとして受け入れる関数 isSorted を定義します。この関数は配列を反復処理し、隣接する要素を順番に比較します。隣接する要素が大小関係を満たさないことが判明した場合は false を返し、それ以外の場合は true を返します。

このメソッドは非常に読みやすいですが、array_multisort 関数を使用するよりもパフォーマンスが低下する可能性があります。

概要

この記事では、配列が順序付けされているかどうかを判断する 2 つの方法、array_multisort 関数を使用する方法と foreach ループを使用する方法を紹介します。 array_multisort 関数を使用したコードは、foreach ループを使用したコードよりも簡潔になりますが、foreach ループよりもパフォーマンスが若干低下する可能性があります。どの方法を使用するかは、実際の状況によって異なります。

以上がPHPで配列が正しいかどうかを判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート