業務でphpのフレームワークを使うことがなくて寂しいのでLaravelを使ってみようと思う。
Laravel phpだけでググると4.2系のドキュメントに行き着いてしまったので
ここからすすめる。
composer global require "laravel/installer"
これは4系と変わらないが、5系からか laravel
というコマンドが追加された。4系にもあったかもしれないが少なくともinstallの時点でこのコマンドは出てこない。
laravel new open-kamattechan-php Crafting application... Loading composer repositories with package information Installing dependencies (including require-dev) from lock file (abbr...) Generating autoload files > php -r "file_exists('.env') || copy('.env.example', '.env');" > Illuminate\Foundation\ComposerScripts::postInstall > php artisan optimize Generating optimized class loader The compiled class file has been removed. > php artisan key:generate Application key [base64:hoge] set successfully. Application ready! Build something amazing.
Amazing!
一応 composer create-project --prefer-dist laravel/laravel open-kamattechan-php
みたいに旧来の方法も使える。
php artisan serve
を実行すると http://localhost:8000 でデモページが開く。
Directory Structure - Laravel - The PHP Framework For Web Artisans
でもディレクトリ構造は見れるが実際にどうなってるのか見たかったので tree
を叩いてみた。
tree -L 3 -I vendor . ├── app │ ├── Console │ │ └── Kernel.php │ ├── Exceptions │ │ └── Handler.php │ ├── Http │ │ ├── Controllers │ │ ├── Kernel.php │ │ └── Middleware │ ├── Providers │ │ ├── AppServiceProvider.php │ │ ├── AuthServiceProvider.php │ │ ├── BroadcastServiceProvider.php │ │ ├── EventServiceProvider.php │ │ └── RouteServiceProvider.php │ └── User.php ├── artisan ├── bootstrap │ ├── app.php │ ├── autoload.php │ └── cache │ └── services.php ├── composer.json ├── composer.lock ├── config │ ├── app.php │ ├── auth.php │ ├── broadcasting.php │ ├── cache.php │ ├── compile.php │ ├── database.php │ ├── filesystems.php │ ├── mail.php │ ├── queue.php │ ├── services.php │ ├── session.php │ └── view.php ├── database │ ├── factories │ │ └── ModelFactory.php │ ├── migrations │ │ ├── 2014_10_12_000000_create_users_table.php │ │ └── 2014_10_12_100000_create_password_resets_table.php │ └── seeds │ └── DatabaseSeeder.php ├── gulpfile.js ├── package.json ├── phpunit.xml ├── public │ ├── css │ │ └── app.css │ ├── favicon.ico │ ├── index.php │ ├── js │ │ └── app.js │ ├── robots.txt │ └── web.config ├── readme.md ├── resources │ ├── assets │ │ ├── js │ │ └── sass │ ├── lang │ │ └── en │ └── views │ ├── errors │ └── welcome.blade.php ├── routes │ ├── api.php │ ├── console.php │ └── web.php ├── server.php ├── storage │ ├── app │ │ └── public │ ├── framework │ │ ├── cache │ │ ├── sessions │ │ └── views │ └── logs ├── tests │ ├── ExampleTest.php │ └── TestCase.php └── yarn.lock 35 directories, 49 files
はじめからyarnが入ってる! 初期状態で必要なnodeのパッケージは yarn install
すれば良い。
ドキュメントを上から順に読んでいったところで Homestead というものを知った。
Homesteadは簡単に言うとLaravel実行環境をvagrant box化したもの。
Valet も使えるとあるが、ここ最近全然vagrantとVirtual Boxを使ってなかったので使ってみる。
Homesteadのお話はまた明日。