PHP
MySQL
Memcached

phpでmysqlとmemcachedの接続確認方法

More than 1 year has passed since last update.

はじめに

みんな大好きPHPだけど、ミドルウェアの設定はちょっと面倒だ
設定はしたはずだけどちゃんと接続できているかどうか確認するのにちょっとしたスニペットを用意した

PHPとミドルウェアの設定が正しければ、以下のコードからPHPからMysqlとMemcachedにはアクセスを確認できる
動かなければ途中の設定で失敗していることとなる

phpinfo()と合わせて環境をチェックするのが良いだろう

注意
MemcachedのライブラリはMemcacheではなくMemcachedを利用しているので、Memcacheを利用する場合は適宜読み替えるように

チェック用のファイルを作成し動作確認する

下記chack.phpをドキュメントルートに置いてブラウザでアクセスする

check.php
<html>
  <body>
<?php

  // データベース接続チェック
  // mysql_connectの引数にホスト名、接続ユーザ、パスワードの順に入れる
  $dbc = mysql_connect('mysql', 'root', 'password');
  if (!$dbc) {
    die('db connection failed<br/>'.mysql_error());
  }
  print('DB connect success!!<br/>');

  // databaseに選択チェック
  // your_databaseに接続するデータベース名を入れる
  $db_selected = mysql_select_db('your_database', $dbc);

  if (!$db_selected){
    die('db select failed<br/>'.mysql_error());
  }
  print('db select success!!<br/>');

  if (mysql_close($dbc)){
    print('disconnect success!!<br/>');
  }

  // memcached接続チェック
  $m = new Memcached();
  // addServerの引数にmemcachedのホスト名、ポート番号を入れる
  $m->addServer('memcached', 11211);

  $m->set('integer', 100);
  $m->set('string', 'string 1234');

  var_dump($m->get('integer'));
  print('<br/>');
  var_dump($m->get('string'));
?>
  </body>
</html>

成功すると以下の様なものが画面に表示される

DB connect success!!
db select success!!
disconnect success!!
int(100) 
string(11) "string 1234"