この記事は最後に更新してから1年以上経過しています。

PHPとMySQLのバージョンを確認

説明

先日、WordPressで構築されたサイトについて最新版へのバージョンアップを依頼される。使用されていたWordPressはバージョン2.xということで、最新版へバージョンアップできるのか、PHPとMySQLのバージョンを確認することになった。

WordPressで構築されたサイトへの不正アクセスのニュースは後を絶たず、原則的には最新版を維持することが望ましいと考えているが、さまざまな事情により開発時のままバージョンアップを行っていないサイトは少なからずある。今回はそんなクライアント様から一部サイトの機能追加にあわせて最新版へのバージョンアップを依頼を受けた。

依頼の前段階として、サイトを運用しているサーバー環境を確認。というのもWordPress 3.2以降と前とでは、動作環境としてPHPとMySQLのバージョンが異なっているからである。WordPress 3.2以降の動作環境は次の通り(最新版の動作環境確認はこちら)。

・PHPバージョン 5.2.4以上
・MySQLバージョン 5.0以上

このことをクライアント様に確認したところ「ちょっとわからない」という回答だったので、PHPとMySQLのバージョンを確認するプラグインを作ってみた。プラグインのコード部分は次の通りである。

$plugin_myver = new myver();
class myver {
	function __construct() {
		global $pagenow;
		register_activation_hook( __FILE__ , array( &$this , 'init' ) );
		add_action( 'admin_init', array( &$this, 'setup' ) );
	}
	function init() { }
	function setup() {
		add_meta_box( 'meta_box_myver', 'PHP and MySQL version', array( &$this, 'meta_box' ), 'dashboard', 'side', 'high' );
	}
	function meta_box() {
		global $wpdb;
		echo 'PHP: '.phpversion().'<br />MySQL: ';
		if ( method_exists( $wpdb, 'db_version' ) )
			echo $wpdb->db_version();
		else
			echo mysql_get_server_info( $wpdb->dbh );
	}
}

このプラグインを有効にすると、ダッシュボードの右上にウィジェットが表示され、PHPとMySQLのバージョンを確認することができる。PHPのバージョンはPHPの関数であるphpversion関数を、MySQLのバージョンはWordPressシステム内部でデータベースアクセスを集中管理する$wpdbオブジェクトのdb_versionメソッド(2.7.0で追加)またはPHPのmysql_get_server_info関数を使用している。MySQLのバージョンはPHPのmysql_get_server_info関数で取得できるが、この関数がPHP 5.5.0で非推奨になったため、このような記述とした。

このプラグインをクライアント様に送り、現在のサーバーの状況を調べていただく。しばらくして最新版へのアップデートは問題ないことが確認でき、本格的なアップデート準備に進むことができた。


最終更新 : 2013年09月11日 12:12

お勧め

is_favicon(2020年4月2日 更新)

bool is_favicon()
リクエストがfavicon.icoか調べる。

wp_kses_post_deep(2018年5月27日 更新)

mixed wp_kses_post_deep( mixed $data )
複数の投稿内容をサニタイズする。

wp_generator(2018年5月27日 更新)

void wp_generator( )
XHTMLのgeneratorタグを表示する。

get_post_class(2022年11月6日 更新)

array get_post_class( [ mixed $class = '' [ , int $post_id = null ] ] )
投稿記事のクラス名を取得する。

get_template_directory(2018年5月27日 更新)

string get_template_directory( )
現在使用しているテーマのパス名を取得する。