*

[RaptorsFramework][PHP]DB接続

公開日: : 最終更新日:2024/05/01 RaptorPHPFramework

前回に引き続きRaptorFrameworkの作業を続ける。

Coreファイルをゴリゴリ追加していこうと思う。
基本的にこのフレームではPHPだけで作る予定だ。なのでhtacsessなどのファイルは使用せず、MYSQLとPHPが稼働すれば動くような仕組みにしていきたい。

リクエストの起点がViewになるという事で純粋な意味でPHPのMVCモデルの定義からは反しているだろうが、
オブジェクト指向に基づいた形ではしっかり作っていく。間違ってたら(あるいはより簡略化できそうなら)是非指摘してもらいたい。

まずはDB接続の処理から。DB接続のユーザー名をまとめるコンフィグファイルと接続処理をまとめるファイルに分割して記述する。
一つにまとめることもできるが、今回それはしない。理由は二つあって一つは接続情報などが変わった場合、コンフィグファイルだけ書き換えれば問題ない状態にすればいい状態にしたいこと、もう一つは処理によってDB接続先を変えたい時にコンフィグファイルを追加できるようにしたいため。

あともう一つ情けない理由があって、慣れ親しんで使っていたmysqli_connectクラスが次のPHPバージョンで削除されてしまうらしく、
そうなるとその一箇所が崩壊するとDB接続関係の処理を全部書き換えなければならなくなるのでPHPのバージョンアップの際に接続処理を書いたファイルだけ書き換えれば対応できる状態にしておきたい。

今やっておけよっていうツッコミは無しな。今は。

config.php


//Mysqlに接続
if(!defined('DB_HOST')){
define("DB_HOST", "localhost");
}
if(!defined('DB_USER')){
define("DB_USER", "root");
}
if(!defined('DB_PASS')){
define("DB_PASS", "root");
}
if(!defined('DB_DATABASE')){
define("DB_DATABASE", "cake_blog_tutorial");
}

 

dbconect.php


class dbconect {
function returnDbconfig() {
$con=mysqli_connect(DB_HOST,DB_USER,DB_PASS,DB_DATABASE);
mysqli_set_charset($con, "utf8");

//接続に失敗した場合エラーを表示してプログラムを終了
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
exit;
}else{
return $con;
}
}

config側でコンフィグ内容は定数として用意しておく。
もしも別の処理で接続先を変えたいならコンフィグファイル内で設定した定数をその処理内でオーバーライドすればいい。


      

関連記事

[PHP]西暦→世紀変換する

(遊戯王真DM2本編より転用+一部改変) 先日偶然家にいた姉と真DM4をやっていた。舞台設

記事を読む

no image

[php]どの数値の倍数かどうかを判定する

俺はPHPでクラス関数を開発した人の事は全力で称えたい PHPでどの数値の倍数かどうかを判定す

記事を読む

[RaptorsFramework][PHP]リクエストをオブジェクト化する

RaptorFrameworkだけどネーミングに既に先客がいた。 どうしてもラプターって言う単語だ

記事を読む

フレームワークを作ってみる。

このブログ。元々PHPの学習状況を報告する為の場所だったんだが、いつの間にか遊びの報告しかしてない事

記事を読む

エクシーズ×リンクフェスティバルレポ

報酬を全部集めたわけではないが、とりあえずミッション分は完走

閃刀入門

チラ裏に近い記事は書かない・書いていても公開しないつもりだっ

MD魔術師S23レポ

前回の記事を書いた時からデビューしたマスターデュエル。ただ、

マスターデュエルにてやっとプラチナに上がれた話

ネットの友人にモチベを掛けられてマスターデュエル参入。リンク

太陽の帝国、大鷲の群れに挑まんとす(ゲームジャーナル39号 真珠湾強襲リプレイpart:1)

初め半年や1年の間は随分暴れてご覧に入れる。然しながら、2年3年と

→もっと見る

PAGE TOP ↑