トップページ
Laravel学習サイトLaravelやるばい

目次

PHPの宇宙船演算子が何かと簡単なサンプルコードで解説

みなさんこんにちは、あべ いさぢです。

今回はPHPの宇宙船演算子が何かと簡単なサンプルコードで考えます。


宇宙船演算子とは

比較関数を例にして説明した方が理解がしやすいのでそれを使います。

usort($numbers, function($a, $b) { 
  return $a - $b; 
});

「$a - $b」を「$a <=> $b」に変えたのが宇宙船演算子です。

考え方は「$a - $b」の場合と全く同じです。

比較関数と宇宙船演算子の違いは比較対象が異なる点です。

比較関数は数値の比較しかできませんが宇宙船演算子は文字列の比較や日付の比較もできます。

文字列比較に使う場合のサンプルコードは下記になります。

$fruits = ["banana", "apple", "orange"];

usort($fruits, function($a, $b) {
    return $a <=> $b;
});

print_r($fruits);

結果は下記になります。

["banana", "apple", "orange"]

日付に使う場合のサンプルコードは下記になります。

$dates = [
    "2025-03-10",
    "2023-05-01",
    "2024-08-20"
];

usort($dates, function($a, $b) {
    return strtotime($a) <=> strtotime($b);
});

print_r($dates);

結果は下記になります。

Array
(
    [0] => 2023-05-01
    [1] => 2024-08-20
    [2] => 2025-03-10
)
戻る