LoginSignup
0
0

More than 3 years have passed since last update.

PHP Slim3フレームワークのサンプルアプリを作ろう(2-1. First Application Walkthrough Getting Set Upまで)

Last updated at Posted at 2020-06-01

はじめに

PHP Slim3フレームワークの勉強のため、
Slim公式のユーザーガイドにあるFirst Application Walkthroughのサンプルアプリを作成します。
まずは、ビルトインWebサーバーで表示させるところまで。

今回は、skeleton projectを使用しないバージョンです。

前提

下記記事で構築した環境を前提とします。

使用ツール

  • Tera Term

手順

1. 専用のユーザーを作成
2. プロジェクトディレクトリを作成
3. Slim Frameworkをインストール
4. アプリケーションを作成
5. アプリケーションを動作させてみる

やってみよう

1. 専用のユーザーを作成

前回の記事と同じ環境で行う方はこの工程はスルーでOKです。

Composerをrootユーザーで操作することは推奨されていないので、
以下のコマンドでslimuserというユーザーを作成します。

useradd slimuser

作成したslimuserに以下のコマンドで切り替えます。

su slimuser

2. プロジェクトディレクトリを作成

slimuserユーザーが作成されると
/home/ディレクトリ内にslimuserディレクトリが作成されます。
その中に以下のプロジェクトディレクトリを作成します。

/home/slimuser/projects/slim/FirstApplication

FirstApplicationの下に以下のようにディレクトリを作成します。
必ずしもこのディレクトリ構造ではなくてもいいようですが、
今回はユーザーガイドに倣います。

.
├── FirstApplication
│   └── src
│       └── public

3. Slim Frameworkをインストール

上記で作成したsrcディレクトリまで移動します。

cd /home/slimuser/projects/slim/FirstApplication/src

以下のコマンドを実行します。

composer require slim/slim:3.*

srcディレクトリ内には以下のようなファイル群が生成されます。

[slimuser@localhost src]$ ls -la
total 16
drwxrwxr-x 4 slimuser slimuser   76 Jun  1 00:30 .
drwxrwxr-x 3 slimuser slimuser   17 Jun  1 00:28 ..
-rw-rw-r-- 1 slimuser slimuser   54 Jun  1 00:30 composer.json
-rw-rw-r-- 1 slimuser slimuser 9700 Jun  1 00:30 composer.lock
drwxrwxr-x 2 slimuser slimuser   23 Jun  1 01:10 public
drwxrwxr-x 7 slimuser slimuser   92 Jun  1 00:30 vendor

4. アプリケーションを作成

srcディレクトリの下のpublicディレクトリに、index.phpファイルを作成します。

vi public/index.php

以下のように記述してください。
First Application Walkthroughでは、
5行目をrequire '../vendor/autoload.php';と記述していましたが、
同じようにするとなぜかエラーが出てしまったので、
require '/home/slimuser/projects/slim/FirstApplication/src/vendor/autoload.php';
のようにフルパスで記述しました。

index.php
<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;

require '/home/slimuser/projects/slim/FirstApplication/src/vendor/autoload.php';

$app = new \Slim\App;
$app->get('/hello/{name}', function (Request $request, Response $response, array $args) {
    $name = $args['name'];
    $response->getBody()->write("Hello, $name");

    return $response;
});
$app->run();

5. アプリケーションを動作させてみる

今回は、PHPのビルトインWebサーバーを使用して表示します。
以下のコマンドを実行します。
192.168.33.60部分は各自の環境に置き換えてください。

php -S 192.168.33.60:8080 -t public public/index.php

下記が表示されたらブラウザでhttp://192.168.33.60:8080/hello/worldを開いてみてください。

[slimuser@localhost src]$ php -S 192.168.33.60:8080 -t public public/index.php
PHP 7.1.33 Development Server started at Mon Jun  1 02:01:37 2020
Listening on http://192.168.33.60:8080
Document root is /home/slimuser/projects/slim/FirstApplication/src/public
Press Ctrl-C to quit.

"Hello, world"と表示されました。

firstApplication1.png

"world"を"cat"に書き換えて表示すると、表示が変わります。
http://192.168.33.60:8080/hello/cat

firstApplication2.png

補足

PHPのビルトインWebサーバーではなく、apacheを使用する手順については、
PHP Slim3フレームワークのサンプルアプリをApacheで動かそう(123)を参照してください。

参考サイト

First Application Walkthrough

関連ページ

Windows10にVagrantをを入れてCentOS7をインストールしよう

1. VagrantインストールからVagrantfileを設置まで
2. 仮想マシンの操作
3. WinSCP、Tera Termに秘密鍵でログイン
4. WinSCP、Tera Termにrootユーザーでパスワードログイン
5. zip/unzipをインストール
6. Vagrantにて仮想環境を配布

ローカルでLAMP環境を構築しよう

0. 事前準備
1. Apacheをインストール
2. MySQLをインストール
3. PHPをインストール
4. ファイアウォールとか停止する

Composerをインストール

CentOS7にComposerをインストールしよう

PHP Slim3フレームワークのサンプルアプリを作ろう

1. skeleton project
2-1. First Application Walkthrough Getting Set Upまで

PHP Slim3フレームワークのサンプルアプリをApacheで動かそう

1. VirtualHost使用
2. DocumentRoot使用
3. Alias使用

0
0
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
0
0