この記事は最後に更新してから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_home(2018年5月27日 更新)

bool is_home( )
要求されているページが、ホーム(トップ)ページか調べる。

update_comment_meta(2014年3月9日 更新)

bool update_comment_meta( int $comment_id, string $meta_key, mixed $meta_value [ , mixed $prev_value = '' ] )
コメントメタ情報の値を更新する。

wp_robots_noindex(2021年3月13日 更新)

array wp_robots_noindex( array $robots )
robotsメタ要素のcontent属性にnoindexを適用する。

is_taxonomy_hierarchical(2018年5月27日 更新)

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

get_comment_pages_count(2015年12月16日 更新)

int get_comment_pages_count( [ array $comments = null [ , int $per_page = null [ , bool $threaded = null ] ] ] )
コメントページ数を取得する。