Webアプリ習作#1

Larvelのバージョンの決定

https://laravelversions.com/ja
こちらによると現行のLTSバージョンは6なので6とする
(2月にリリースされた9が最新のLTSになる予定だったが、変更になった模様)

XAMPPのインストール

https://www.apachefriends.org/jp/index.html
からWindows向け8.1.2をダウンロード
インストールが終わったらがphpのバージョンを確認
(Laravel 6.xにはPHP7.2.0以上が必須)
コマンドプロンプトで下記を入力

php -v
Composerのインストール

https://getcomposer.org/
からComposer-Setup.exeをダウンロードして実行
"Select install mode"と問われるのでInstall for all usersを選択
"Installation Options"ではDeveloper modeにはチェックを入れない
"Settings Check"ではphp.exeのパスが表示されていることを確認する
(XAMPP導入済みならC:\xampp\php\php.exeになるはず)
インストールが終わったらコマンドプロンプトで下記を入力してヘルプが表示されることを確認

composer
Laravelインストーラのインストール

コマンドプロンプトで以下のコマンドを実行

composer global require "laravel/installer"

完了したらバージョン確認

laravel -V
Laravelプロジェクトの作成

プロジェクト"twiapp"をLaravel 6.xで作成(プロジェクト名は任意)

cd c:\xampp\htdocs
composer create-project "laravel/laravel=6.*.*" --prefer-dist twiapp

※ここでエラー発生※

PHP Fatal error:  During inheritance of ArrayAccess: Uncaught ErrorException: Return type of Illuminate\Support\Collection::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in C:\xampp\htdocs\twiapp\vendor\laravel\framework\src\Illuminate\Support\Collection.php:1277

https://programmierfrage.com/items/php-upgrade-7-2-to-8-1-and-laravel-problem-is-arrayaccessoffsetexistsmixed-o
こちらの情報によるとPHPを7から8にアップグレードした際に報告されている模様
Laravel 6.xに対してPHP 8は新しすぎるらしい
上記のXAMPP公式にはWindows向け7.4.27も公開されているのでそちらをダウンロードして再度インストール
(その前に古いXAMPPはアンインストール)

再度プロジェクトを作成(プロジェクト名は任意)

cd c:\xampp\htdocs
composer create-project "laravel/laravel=6.*.*" --prefer-dist twiapp

今度はエラーなく成功

作成されたプロジェクトのディレクトリに移動してLaravelのバージョン確認

cd twiapp
php artisan --version
ローカルサーバ上でアプリ起動

コマンドプロンプトでプロジェクトディレクトリでローカルサーバ起動

cd c:\xampp\htdocs\twiapp
php artisan serve

ブラウザでhttp://localhost:8000にアクセス
Laravelのサンプルページが表示されることを確認

ローカルサーバの停止

コマンドプロンプト上でCtrl+C