とほほのLaravel入門
目次
Laravelとは
- PHP で記述された Webフレームワークの一つです。
 - PHPフレームワークでは CakePHP と Symfony が争っていた時代がありましたが、最近は Laravel 一強の感があります。
 - Ruby の Ruby on Rails、Python の Django、PHP の Laravel で三大フレームワークとも呼ばれます。
 - マイクロソフト .NET の開発に関わっていた Taylor Otwell 氏が開発。
 - PHPのライブラリ管理システム Composer を利用。
 - Symfony のライブラリをいくつか使用しています。
 - ライセンスは MIT License。
 - 通常のリリース版は、バグフィックスが半年、セキュリティバグフィックスが1年間。
 - LTS(Long Time Support)版は、バグフィックスが2年間、セキュリティバグフィックスが3年間予定されています。
 - 現在(2020年3月)時点の最新版は 7.3.0。LTS(Long Time Support)版は 6.x が最新です。
 - Laravel を少し軽量化した Lumen というマイクロフレームワークも公開されています。
 
インストール
CentOS 7 に Laravel 7.3 をインストールする手順を示します。
Shell
必要なパッケージと PHP 7.2 をインストールする # yum install -y zip unzip # yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm # yum install -y --enablerepo=remi,remi-php72 php php-bcmath php-json php-mbstring php-pdo php-xml php-zip Composer をインストールする # curl -sS https://getcomposer.org/installer | php # mv ./composer.phar /usr/local/bin/composer Composer を用いて Laravel インストーラをインストールする # composer global require laravel/installer # echo export PATH=$PATH:~/.composer/vendor/bin/ >> ~/.bashrc # source ~/.bashrc # laravel --version Laravel Installer 3.0.1
プロジェクトを作成する
Laravelインストーラを用いて blog という名前のプロジェクトを作成します。
Shell
# cd /opt # laravel new blog # cd blog
簡易サーバを起動する
簡易サーバを起動します。簡易サーバは試験用のものですので、本番では使用しないようにしてください。
Shell
# php artisan serve --host=0.0.0.0 --port=80
ブラウザから http://サーバアドレス/ にアクセスして、「Laravel」と表示されれば成功です。
Apacheから起動する
Apache をインストールします。
Shell
# yum install -y httpd
コンフィグファイル /etc/httpd/conf.d/laravel.conf を作成します。
/etc/httpd/conf.d/laravel.conf
<VirtualHost "*:80">
    DocumentRoot /opt/blog/public
    ServerName www.example.com
    <Directory "/opt/blog/public">
        AllowOverride All
        Options All
        Require all granted
    </Directory>
</VirtualHost>
./storage, ./bootstrap/cache ディレクトリのパーミッションを変更します。
Shell
# chown -R apache:apache ./storage ./bootstrap/cache
httpd を起動します。
Shell
# systemctl enable httpd # systemctl start httpd
ブラウザから http://サーバアドレス/ にアクセスして、「Laravel」と表示されれば成功です。
ルーティングを設定する
./routes/web.php にルーティング情報を追記します。
./routes/web.php
<?php
use Illuminate\Support\Facades\Route;
Route::get('/', function () {
    return view('welcome');
});
Route::get('/hello', function () {
    return 'Hello world!';
});
http://~/hello にアクセスして、"Hello world!" と表示されれば成功です。
引数を使用するには下記の様にしてください。
./routes/web.php
Route::get('/hello/{name}', function ($name) {
    return 'Hello ' . $name . '!';
});
http://~/hello/Yamada にアクセスして、"Hello Yamada!" と表示されれば成功です。
ビューを利用する
ビューファイル ./resources/view/hello.blade.php を作成します。
./soureces/view/hello.blade.php
<!doctype html>
<html>
  <head>
    <title>TEST</title>
  </head>
  <body>
    <h1>Hello {{ $name }}!</h1>
  </body>
</html>
./routes/web.php を下記の様に修正します。
./routes/web.php
Route::get('/hello/{name}', function ($name) {
    return view('hello', ['name' => $name]);
});
http://~/hello/Yamada にアクセスして、"Hello Yamada!" と表示されれば成功です。
リンク
- Laravel Official Site: https://laravel.com/
 - API Reference: https://laravel.com/api/7.x/
 
Copyright (C) 2020 杜甫々
  初版:2020年3月29日 最終更新:2020年3月29日
  https://www.tohoho-web.com/ex/laravel.html