LoginSignup
25
17

More than 5 years have passed since last update.

MAMPでPHPからMySQLに接続するためのPDOの書き方

Last updated at Posted at 2018-11-16

MacとMAMPの環境でPHPを学習するという方も多いと思います。

私が、上記の環境で学習していてPHPからMySQLに接続する時、ちょっとハマってしまった点があったのでこちらに忘備録も兼ねて記載しておきます。

PDOの引数

PHPでPDOのオブジェクトを生成してデータベースに接続する際には、引数として以下のように3つ必要です。

new PDO('接続文字列','ユーザー名','パスワード')

実際にMacとMAMPの環境で、PHPからMySQLのmydbという名前のデーターベースに接続する場合は、

'接続文字列'のところには接続するための情報としてmysql:dbname=mydb;host=localhost;charset=utf8を、'ユーザー名''パスワード'としてrootを記入します。

完成するとこんな感じ。

new PDO('mysql:dbname=mydb;host=localhost;charset=utf8','root', 'root');

 
 
ちなみに、XAMPPを使用した環境でデータベースに接続する際は、

new PDO('mysql:dbname=mydb;host=127.0.0.1;charset=utf8','root', '');

と書きます。

PHP関連の書籍や動画教材などでXAMPPを使った環境で説明がされている場合もよくあります。
そのままコードを書き写しても、MAMPでは正しく接続できないということもありますので注意が必要です。

接続文字列のところで、MAMPではhost=に続くのがlocalhostなのに対して、XAMPPでは127.0.0.1になっています。
またパスワードがMAMPでは'root'と入力するのに対して、XAMPPでは''(空文字)であるというのが具体的な違いです。(MAMPもXAMPPもユーザー名もパスワードも、"初期値"の場合なので、自分で変更したりしたら変わります。)

最後に

私は、XAMPPで解説している情報をもとにMAMPで学習しており、接続文字列の127.0.0.1localhostの違いのところでハマっていました(汗)

25
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
17