Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
4
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

@futo_creid

ComposerでSlim4を導入

はじめに

普段PHPで開発を行っていますが、しばらく前からSlim3というフレームワークで開発を行うようになりました!
前回はComposerとXamppの導入を行ったので、今回はフレームワークを入れて、PHPが組める環境にしていきます。

目次

・実行環境
・環境構築
 - Xampp、Composerの用意
・Slim4導入
 - env作成(設定ファイル)
 - DB接続設定
・Xampp実行(WEBサーバー、DBサーバー)
・初期設定
・動作確認

実行環境

・Windows
・Composer
・Xampp(Apache,Mysql)
・Slim4
ネットにつながるWindowsPC1台で完結します!

環境構築

今回以下のディレクトリ配下で作業することを想定しています。
C:\demo\slim4
上記のディレクトリを事前に作成し、PowerShellで開いておいてください。
プロジェクト作成後は
C:\demo\slim4\my-app
がルートディレクトリになります。(my-appは自動作成です。)

Xampp、Composerの用意

前回の記事でXamppとComposerを導入しています。
もし入れていなければそちらをご覧ください。

Slim4導入

早速Slim4を入れていきます。
ただ一からフレームワークの部品をすべて作成していくと非常に手間がかかるので、
Skeletonを使用して作成していきます。
今回は
odan/slim4-skeleton
というものを使用していきます。
以下のコマンドを実行してください。

composer create-project odan/slim4-skeleton my-app

ルートディレクトリの下に
my-app
という名前でプロジェクト作成されました。
ではファイルを編集していきます。

env作成(設定ファイル)

configフォルダの下にある
env.example.php
をコピーして
env.php
を作成してください。

DB接続設定

env.phpを開いて、
DBの接続設定を編集します。
ですがXamppを入れた人はここでは設定の記述はデフォルトで問題ないと思います。

// Database
$settings['db']['database'] = 'test';
$settings['db']['username'] = 'root';
$settings['db']['password'] = '';

Xampp実行(WEBサーバー、DBサーバー)

PC下部の検索バーでXamppを検索し、Xampp Control Panel を実行します。
image.png

コントロールパネルを実行したら以下のようなウィンドウが開くので、
まずはWebサーバーの設定をします。
Apacheの列のConfigからApache(httpd.conf)を開きます。
image.png

httpd.confというテキストが開くので、
以下編集していきます。
既にDocumentRootという記述があるので編集します。

DocumentRoot "C:\demo\slim4\my-app\public"

これはlocalhostにアクセスしたときの参照先の設定になります。

また、以下をファイル最下段に追記します。

<Directory "C:\demo\slim4\my-app">
    Options Indexes FollowSymLinks Includes ExecCGI
    AllowOverride All
    Require all granted
</Directory>

これを記述することによりプログラムからDirectoryに記述したフォルダにアクセスすることができるようになります。
設定できたらWebサーバーを起動します。
image.png

DBサーバーも起動します。
DBサーバーは特に設定の変更は必要ありません。
image.png

初期設定

プロジェクトの作成とWEBサーバー、DBサーバーの作成が済んだら初期設定を実行します。
プロジェクトのルートディレクトリ(C:\demo\slim4\my-app)で以下を実行します。

composer migrate

自動で初期設定が完了するのでアクセスしてみましょう!

動作確認

ブラウザを開いて、
http://localhost/
にアクセスします。
image.png
こんな画面が出ていたら導入に成功しています。

OKを押下すると画面にアクセスできます。
時刻が表示されていることや
Usersなどアクセスしてみてください。
DBに接続できているはずなので、DB接続のツール等(MySQL Workbench等)でテーブルをいじることができればユーザーを追加してUsers画面で確認できると思います。

次回はこのSkeletonにページを作成したいと思います!

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
4
Help us understand the problem. What are the problem?