Tobilog-Selection
こんにちは!
とびろぐ管理人のとびうおです。
PHPのドキュメントを読んでいたら、「宇宙船演算子」というのを発見したので、今回はこれについての記事を書いていきます。
とびうお
PHPの宇宙船演算子!?というの
少し気になりますね…!
そもそも宇宙船演算子とは?
宇宙船演算子ってなんで宇宙船演算子なんですかね…。
まあ、それは置いておいて、ドキュメントにあった宇宙船演算子は以下のようなものです。
<?php
echo 1 <=> 1; // 0
echo 1 <=> 2; // -1
echo 2 <=> 1; // 1
echo $a <=> $b; // ???
このように演算子としては <=>のような演算子で、$aが$bよりも大きい場合は1、$aと$bが等しい場合は0、$aが$bよりも小さい場合は-1をそれぞれ返すと言ったものになっています。
とびうお
確かに、
大なり小なりと等しいを組み合わせたものっぽいですね
文字列の比較だって!
なんと、この宇宙船演算子ですが、文字列の比較までもできてしまいます。
// 文字列
echo "a" <=> "a"; // 0
echo "a" <=> "b"; // -1
echo "b" <=> "a"; // 1
とびうお
文字的にaの方がbよりも小さいんですね
宇宙船演算子の使い所
宇宙演算子の使い所としては、配列のsortです。
以下のようにプログラミングをすると、sortをすることができます!
$array = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5];
usort($array, function($a, $b) {
return $a <=> $b;
});
// ソート後の配列を表示
foreach ($array as $value) {
echo $value . ' ';
}
とびうお
このように数字の場合簡単にsortできるよ!
さらに英語でも!
さらに、英語の場合でも簡単にsortすることが可能です。
$array = ["orange", "apple", "banana"];
usort($array, function($a, $b) {
return $a <=> $b;
});
// ソート後の配列を表示
foreach ($array as $value) {
echo $value . ' ';
}
とびうお
おー!
便利ですね!
おわりに
宇宙船演算子という少し変わった名前でしたが、実用性の高い演算子であることがわかりましたね!
ちなみに、名前の由来は、<=>という形からだそうですよ!
なんともユニークな演算子でした!
とびうお
便利な演算子でしたね!
トビログにはこの他にもたくさんLaravelの記事があります!
ぜひチェックしてみてください↓↓
Laravel
「Laravel」の記事一覧です。
コメント