ホームページ  >  記事  >  バックエンド開発  >  Unix タイムスタンプに基づいて PHP で多次元配列をソートするにはどうすればよいですか?

Unix タイムスタンプに基づいて PHP で多次元配列をソートするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-05 10:15:02742ブラウズ

How Can I Sort a Multidimensional Array in PHP Based on a Unix Timestamp?

PHP での多次元配列のソート

目的

に基づいて多次元配列をソートするにはサブ配列 "x" に格納された UNIX タイムスタンプ。

Solution

これを実現するには、usort 関数と組み合わせてカスタム比較関数を利用できます。

カスタム比較関数

<code class="php">function compare($x, $y) {
    if ($x[4] == $y[4])
        return 0;
    else if ($x[4] < $y[4])
        return -1;
    else
        return 1;
}</code>

usort を使用した関数の適用

<code class="php">usort($arrayOfArrays, 'compare');</code>

さらなる説明

usort 関数は 2 番目の引数として比較関数を期待します。この関数は配列から 2 つの要素を取得し、最初の要素を 2 番目の要素の前に配置する必要がある場合は負の値を返し、2 番目の要素の前に配置する必要がある場合はゼロ値を返します。

このカスタム関数は、各サブ配列の 4 番目の位置にある UNIX タイムスタンプ値を比較します。タイムスタンプが等しい場合は 0 を返します。最初のタイムスタンプが 2 番目のタイムスタンプよりも早い場合は -1 を返します。それ以外の場合は、1 を返し、2 番目のサブ配列が最初のサブ配列の後に出現することを示します。

以上がUnix タイムスタンプに基づいて PHP で多次元配列をソートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。