PHP マニュアル
前のページ |  | 次のページ

# version_compare

(PHP 4 >= 4.1.0, PHP 5)

version_compare -- ふたつの "PHP 標準" バージョン番号文字列を比較する

## Description

mixed version_compare ( string version1, string version2 [, string operator] )

version_compare()は、ふたつの "PHP 標準" バージョン 番号文字列を比較します。この関数は、いくつかのバージョンの PHP でのみ 動作するプログラムを書きたい場合に有用です。

version_compare()は、最初のバージョンが 2 番目 よりも小さい場合に -1、等しい場合に 0、2 番目が小さい場合に +1 を返し ます。

この関数はまず、バージョン文字列の `_`, `-`, `+` をドット `.` で置き換えます。 さらに、数値でない部分の前後にドット `.` を追加します。 例えば '4.3.2RC1' は '4.3.2.RC.1' となります。 次に、explode('.', $ver) とするのと同じように結果を分割し、左から右へ 各部分を比較していきます。特殊な文字列が含まれている場合は以下の順で 並べ替えます: `dev` < `alpha` = `a` < `beta` = `b` < `RC` < `pl`. この方法により、'4.1' と '4.1.2' のようなバージョンの違いだけではなく PHP 固有の開発ステータスの違いも判断することが可能となります。

3番目のオプション引数 `operator` を指定した 場合、特定の関係を調べることが可能です。指定可能な演算子を以下に 示します。 `<`, `lt`, `<=`, `le`, `>`, `gt`, `>=`, `ge`, `==`, `=`, `eq`, `!=`, `<>`, `ne` この引数を用いると、この関数はこの演算子により指定された関係が 成り立つ場合に `TRUE` 、そうでない場合に `FALSE` を返します。

> 注意: `PHP_VERSION` 定数にはカレントの PHP のバージョンが 格納されます。

例 1. version_compare() の例

`<?php // -1 を表示する echo version_compare("4.0.4", "4.0.6"); // すべて 1 を表示する echo version_compare("4.0.4", "4.0.6", "<"); echo version_compare("4.0.6", "4.0.6", "eq"); ?>`

前のページ | ホーム | 次のページ
sys_get_temp_dir | 上に戻る | zend_logo_guid