*

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

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

このブログ。元々PHPの学習状況を報告する為の場所だったんだが、いつの間にか遊びの報告しかしてない事に気づいた。
まあ、ブログなんてそんなもんだとか考えながらやってたけど、ちょっとは楽しみながら勉強したいよね。

PHP仕事で使っているが、上司がゴリゴリ作ったフレームワークを使ってWEBアプリを作っている。
それの使い方だけ覚えていてPHPの基礎部分を何一つわかってないと言う事。
そこで俺だけのフレームワークを一個作ってみる。

まず、そう考えた理由がいくつかある。一つは上記のとおり。もう一つは上司が個人でゴリゴリ作ってたものを気安く外に出せない事もあって外部からの提案事に対応できなかったのがある。
で、俺が作ったやつだったらどうしようが勝手だろうと言う事と、自分で解る仕組みを作っておいてエラーが出たら対応できるようにしたい。
(仕事で使ってるやつはコアファイルを怖くて弄れない。ってか大体のFWはそうだと思うけど。)

今回作るFWの目的は以下の通り。
・PHPとDBの連携の教材として使える物。
・完成後何かしらのコアファイルにする
(段階的にBBS→メルマガシステム→CMS)

とりあえず最初の着地点として
DBへのInsert、Select、Edit、Deleteが<Form>上からできる。

という形にする。

開始のベースとしていくのは以下のプログラム。


//Mysqlに接続
$con=mysqli_connect("HOST","USER","PASSWORD","DBTABLE");
mysqli_set_charset($con, "utf8");
//接続に失敗した場合エラーを表示してプログラムを終了
if (mysqli_connect_errno())
{
 echo "Failed to connect to MySQL: " . mysqli_connect_error();
 exit;
}
$sql = "SELECT * FROM test_json";
//実際にSQLを実行する
if ($result = mysqli_query($con, $sql))
{
 //結果の配列を定義
 $resultArray = array();
 $keyArray = array();
 while($row = $result-&amp;gt;fetch_object())
 {
 //SQLの実行結果を配列に入れる
 $keyArray = $row;
 array_push($resultArray,$keyArray);
 }
 //取得した結果をJsonデータに変換
 echo json_encode($resultArray);
}
//Mysqlの接続を閉じる
mysqli_close($con);

テスト用にこの間作った奴なんだが、DBから取得した情報を配列にしてJSONに変換して吐き出すだけのスクリプト。
これにControllerを作って処理をゴリゴリ書いていこうと思う。

ディレクトリ構造を考える

RaptorDelectory

とりあえずMVCのモデルは崩さない形にしたい。
最近になって自分の認識が間違ってた事もあるけど(ViewからModelに直接アクセスしても大丈夫だって知らなかったとか色々)、まあとにかくMVCなのだ。どうせβ版だし。
最小限ViewとModel、Controllerとの分割が出来てれば最初はそれでよかろう。どうせβ版だし。

ユーザー領域
ユーザーがゴリゴリ書いたものを追加していく領域。これはもうベースディレクトリをその形にしていく。

Core領域
このFWの基本機能の部分。
上のコードで言う所の3行目から21行目辺りを書いていくことになる。
機能だけの部分なので基本的にユーザーは触らない。

このフレーム自体にRaptorFrameworkと名付ける事にするが、
その由来とかはまた今度。

関連記事

no image

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

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

記事を読む

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

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

記事を読む

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

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

記事を読む

[RaptorsFramework][PHP]DB接続

前回に引き続きRaptorFrameworkの作業を続ける。 Coreファイルをゴリゴリ追加し

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

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

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

閃刀入門

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

MD魔術師S23レポ

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

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

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

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

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

→もっと見る

PAGE TOP ↑