この記事はだいたい 5 分ほどで読めます。
mysqli_connect 関数を使ってPHPでMySQLに接続する方法の備忘録です。
確認した環境
- OS Windows10
- XAMPP ver.7.4.6
動かした人
- 普段PHPを使ってない
- エンジニア歴10数年
- 既婚
目次
XAMPPについて
XAMPPはApach,PHP,MySQLなどWebアプリの実行に必要なアプリケーションをまとめたものです。
インストーラを使用してインストールするとWebアプリの開発環境が手軽に手に入ります。
インストール方法を紹介した記事はこちらです。>>【備忘録】XAMPPインストール からの hello world!
コーディング
実際にコーディングしてみます。
Apacheのルートディレクトリに testdbフォルダを作成。
testdbフォルダに index.phpを作成します。
<?php // phpからMySQLに接続 //ホスト名 $servername = "localhost"; //ユーザー名 $user = "root"; //パスワード $password = ""; //db名 $dbname = "testdb"; // 接続 $conn = mysqli_connect($servername, $user, $password, $dbname); // 接続情報($conn)を展開 var_dump($conn); // 接続を閉じる mysqli_close($conn);
コードは以上です。
mysqli_connect関数に ホスト・ユーザー名・パスワード・データベース名を渡しています。
その下で、mysqli_connect関数から返ってきた値を展開しています。
この展開する処理はデバッグするために記述してあります。
最後にmysqli_close関数で接続を閉じています。
続いてXAMPPのルートディレクトリの確認方法を見てみます。
ルートディレクトリの確認方法
XAMPP Control Panelを開きます。
ApacheのConfigボタンをクリック。
Apache(httpd.conf)をクリック。
httpd.conf内をDocumentRootで検索します。
# # DocumentRoot: The directory out of which you will serve your # documents. By default, all requests are taken from this directory, but # symbolic links and aliases may be used to point to other locations. # DocumentRoot "D:/xampp/htdocs"
この場合は d:\xampp\htdocsがルートディレクトリになります。
index.phpを保存してブラウザを起動します。
確認
ブラウザで確認してみます。
URLにlocalhost/testdbと入力します。
var_dump関数に渡された接続情報が展開されています。
接続成功です。
MySQLを止めて接続が失敗した場合を確認してみます。
MySQLのStopボタンをクリック。
先ほどのページを再読み込みします。
エラーが発生しました。
mysqli_connectとmysqli_closeがfalseとなっています。
使用した関数
3つの関数を使ってMySQLへの接続と切断の確認を行いました。
- mysqli_connect
- mysqli_close
- var_dump
mysqli_connect
MySQLへの新しい接続をオープンする。
パラメータ
$host
接続先のホスト名または IP アドレス
$user
MySQL のユーザー名
$password
MySQL のパスワード
$database
クエリ実行時のデフォルトのデータベース名
$port
使用するポート番号
$socket
使用するソケット
戻り値
接続情報のオブジェクトが返ってくる。失敗した場合はFalseを返す。
var_dump
ダンプしたい変数を渡して内容を取得する。
パラメータ
$expression
ダンプしたい変数
戻り値
無し
mysqli_close
開いているデータベースの接続を閉じる。
パラメータ
$link
mysqli_connect() が返すリンク ID。
戻り値
成功した場合はTRUE,失敗した場合はFALSEが返る。
まとめ
mysqli_connect 関数を使ってPHPからMySQLに接続してみました。
接続と切断だけなので特に難しいところはないんですけど、db名を渡さないでも接続ができることは新しい発見でした。
過去にXAMPPの記事も書いてます。こちらもぜひ見てみてください。
>>【備忘録】XAMPPインストール からの hello world!
>>【備忘録】XAMPP で VSCode の拡張機能 PHP Debug を使ってみる
おわり。