この記事は最後に更新してから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

お勧め

has_category(2012年1月17日 更新)

bool has_category( [ mixed $category = '' [ , mixed $post = null ] ] )
投稿記事がカテゴリーに属しているか調べる。

comments_template(2018年5月27日 更新)

void comments_template( string $file = '/comments.php' , bool $separate_comments = false )
投稿ページ(post)または単一ページ(page)のコメント情報を取得し、コメント表示・投稿用のテンプレートファイルを読み込んで表示する。

is_taxonomy_hierarchical(2018年5月27日 更新)

bool is_taxonomy_hierarchical( string $taxonomy )
タクソノミーに階層(親子)関係があるか調べる。

send_confirmation_on_profile_email(2018年5月27日 更新)

void send_confirmation_on_profile_email()
メールアドレス変更を確認するメールを送信する。

get_the_modified_time(2023年9月20日 更新)

string | int | false get_the_modified_time( [ string $format = '' [ , int | WP_Post $post = null ] ] )
パラメータ$formatで指定したフォーマットで投稿の更新時刻を取得する。