使い方
$comp = version_compare( ’5.1.0′, ’5.0.0′ );
2つのバージョン番号を比較して、どちらがバージョンが新しいか、古いかを判断してくれる関数です。
PHPのバージョン番号に合わせて実装されていますが、他のソフトウェアのバージョン番号でも大体正しく比較してくれます。
実際バージョン番号を比較するのって結構めんどくさいんですよね。
「5.1.9と5.1.10って、どっちが新しいんだっけ?」とか一瞬自信なくしません?
そんなあなたにオススメの関数です。
ちなみに戻り値が少しわかりにくいので表でご説明します。
条件 | 戻り値 |
---|---|
第1引数 = 第2引数 | 0 |
第1引数 > 第2引数 | 1 |
第1引数 < 第2引数 | -1 |
戻り値が分かりづらい!と思った方もだいじょうぶ!
実は第3引数を指定することができるんです。こんな風に↓
if( version_compare(PHP_VERSION, '5.0.0', '>=') ) { //PHPのバージョンが5.0.0か、それより新しい場合の処理 } else { //PHPのバージョンが5.0.0未満の場合の処理 }
ちなみに、devなどのプレリリース版は正式版よりも低く評価されるようですので注意が必要です。
詳細は公式サイトをご覧あれ。
使いどころ
久々に出ました。こんなのいつ使うの?という関数です。
でも意外と有用なんです。
例えば、PHP5.2以下とPHP5.3以上で処理を分けたいときや、
PHP4だったら「このアプリケーションは非対応です!」とかやりたくなったら迷わずこれです。
公式サイト
http://jp1.php.net/manual/ja/function.version-compare.php