【PHP8.x】phpversion関数の使い方

phpversion関数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

phpversion関数は、現在実行されているPHPのバージョン情報、または特定のPHPエクステンション(拡張モジュール)のバージョン情報を取得する関数です。この関数は、ご自身の作成したプログラムが特定のPHP環境で正しく動作するかどうかを確認したい場合や、実行環境の情報を把握したい場合に利用します。

引数を指定せずにphpversion()と呼び出すと、現在動作しているPHPのフルバージョン番号が文字列として返されます。例えば、「8.2.0」といった形式のバージョン文字列が取得できます。これにより、スクリプトがどのPHPバージョン上で実行されているかを簡単に判別することが可能です。

また、引数として特定のPHPエクステンションの名前(例えば、"curl""gd"など)を文字列で渡すと、そのエクステンションのバージョン番号が文字列として返されます。例えば、phpversion("curl")と記述すると、CURLエクステンションのバージョン情報が取得できます。もし指定したエクステンションが見つからない場合や、そのエクステンションにバージョン情報がない場合は、論理値のfalseが戻り値となります。

この関数は、PHPアプリケーションの互換性を確認したり、利用しているエクステンションのバージョンをチェックしたりする際に、基本的ながらも重要な情報を提供します。デバッグや環境構築時において、システムエンジニアがPHPの実行環境を正確に把握するために活用できる関数です。

構文(syntax)

1phpversion(?string $extension = null)

引数(parameters)

?string $extension = null

  • ?string $extension = null: PHPのバージョン情報を取得したい拡張モジュール名を指定します。省略すると、PHP自体のバージョンが取得されます。

戻り値(return)

string|false

PHPのバージョン番号を文字列で返します。PHPのインストールに失敗している場合はfalseを返します。

サンプルコード

PHPバージョンを取得する

1<?php
2
3// 実行中のPHPのバージョンを出力します。
4// phpversion() 関数は、引数を指定しない場合、PHP本体のバージョン文字列を返します。
5// 通常、この関数はPHPのバージョン文字列を返しますが、失敗した場合は false を返します。
6echo "PHPのバージョン: " . phpversion() . PHP_EOL;
7
8// 特定の拡張機能のバージョンを知りたい場合は、引数に拡張機能名を指定します。
9// 例: 'mysqli' 拡張機能のバージョン
10// echo "MySQLi拡張機能のバージョン: " . phpversion('mysqli') . PHP_EOL;
11
12?>

このサンプルコードは、phpversion() 関数を使って現在実行されているPHPのバージョン情報を取得し、画面に出力するものです。

phpversion() は、PHP環境に関するバージョン情報を調べるための関数です。この関数は、引数の有無によって動作が変わります。

引数を何も指定せずに phpversion() と呼び出すと、PHP本体のバージョン番号が文字列として返されます。サンプルコードではこの使い方をしており、取得したバージョン文字列を echo で表示しています。

一方、特定のPHP拡張機能のバージョンを知りたい場合は、引数としてその拡張機能の名前を文字列で渡します。例えば phpversion('mysqli') と記述すると、mysqli 拡張機能のバージョンを取得できます。

この関数の戻り値は、成功した場合はバージョン番号の文字列ですが、引数で指定した拡張機能が存在しないなど、バージョンが取得できなかった場合には false という特別な値が返されます。これにより、プログラムの実行環境に必要な機能やバージョンが備わっているかを確認する際に役立ちます。

phpversion()関数は、引数で指定した拡張機能が存在しない場合やバージョン情報を取得できない場合に、文字列ではなく false を返します。falseecho で直接出力すると画面には何も表示されないため、エラーに気づきにくい点に注意が必要です。より安全に利用するには、一度変数に結果を代入し、if 文などで false でないことを確認してから文字列として扱うことを推奨します。この一手間により、拡張機能が無効な環境でもプログラムが意図せず停止したり、空の情報を表示したりすることを防げ、コードの安定性が向上します。

関連コンテンツ