WEB開発 プログラミング

初心者でもできるやさしいLaravel入門 Part.1 (laravel 8.x対応)

今回は多くの現場で使われているPHPのWeb開発フレームワークを使うためのプロジェクト作成(環境構築)についてご紹介します。

初心者でもわかるように画像多めでしっかり説明しています。これに従えば確実にできます!

わからないところがあれば教えますのでコメントにてご質問ください!

この記事にお勧めの人

・HTML/CSSを学び終わったけど本格的にWeb開発をしてみたいけど何をしたらいいかわからない人

・簡単に堅牢で信頼性のあるWebサイトを作成したい人

インストール

PHPのインストール

laravelを使用するためにはPHPという言語を使います。これを使うためにはインストールする必要があります。

Windowsの場合

PHPインストールの事前準備

PHPをインストールするための要件として他の物をインストールする必要があります。

PHP は Visual C ランタイム (CRT) を必要とします。これを必要とするアプリケーションは多いので、おそらく既にインストールされているでしょう。PHP 5.5 および 5.6 が必要とするのは VC CRT 11 (Visual Studio 2012) です。» https://www.microsoft.com/en-us/download/details.aspx?id=30679 を参照ください。PHP 7.0 と 7.1 が必要とするのは VC CRT 14 (Visual Studio 2015) です。 PHP 7.2, 7.3 および 7.4 が必要とするのは VC CRT 15 (Visual Studio 2017) です。 Microsoft Visual C++ Redistributable for Visual Studio 2019 はこれら全ての PHP バージョンに適合します。 » https://visualstudio.microsoft.com/downloads/ を参照してください。

[PHPマニュアル -インストール要件-] https://www.php.net/manual/ja/install.windows.requirements.php

記載の通り以下のサイトにアクセスします。

https://support.microsoft.com/ja-jp/help/2977003/the-latest-supported-visual-c-downloads


上記でダウンロードした[VC_redist.x64.exe]を実行します。

VCのインストールは特別な操作は必要ありません。表示に従ってインストールしましょう。

PHPのインストール

PHPのインストールするためのファイルをダウンロードするためにhttps://windows.php.net/download/ にアクセスしましょう。

最新のものをダウンロードしたいので、一番上にあるバージョン(PHP7.4)を選択します。

いろいろありますが、今あるパソコンはおそらく64bitなのでVC15 x64 Thread Safeを選びます。

今回はZipファイルをダウンロードしましょう。

PHP7.4は2020/10/20時点で最新です。インストールする時期によっては8.0が出ているかもしれませんがその時はそれを選択してください。

ダウンロード出来たら以下のことをしていきます。

  1. Zipファイルを解凍する
  2. 解凍したフォルダの名前を[php]にする
  3. 2のフォルダをC:\に配置する
  4. 環境変数にパスを追加する

4は初心者には少し難しいかもしれないので少し詳しく説明します。

1,2,3は簡単だと思いますので説明は割愛します。

3まで完了すると画像のような状態になると思います。このようになれば後は書いてある通りに作業を行ってください。

スタートメニューを右クリック→システム関連設定→システム情報

システムの詳細設定をクリック

環境変数をクリック

Pathを選択して編集ボタンを押す。

新規ボタンを押して「C:\php\」を入力します。

ここまで来たらPHPのインストール確認を行います。

コマンドプロンプトを開いて以下のコマンドを入力します。

php -v

上記のようにバージョンが表示されたら成功です。

Composerのインストール

Windowsの場合もっと簡単にインストーラを利用してインストールする方法もあります!

Windowsの場合のComposerインストーラの利用

Composer-Setup.exeを選択してダウンロード
推奨されている「Install for all users」を選択
そのまま Next>
そのまま Next>
基本的には何もせず Next> 会社のパソコンなどでproxyの設定がある場合入力
Installをクリック
完了!

Win+rを押してcmd と入力して出てきたコマンドプロンプトでcomposer と打ってみてください。エラーが起きなければ正常にインストールできています。

この設定をした場合は「laravelをインストールする」までスキップすることができますよ!

macなどインストーラを利用しない方法

Laravelを始める前に、Composerをインストールする必要があります。

以下のサイトにアクセスしましょう。

https://getcomposer.org/download/

このサイトに書いてある4行をコマンドプロンプトで実行しましょう。

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'c31c1e292ad7be5f49291169c0ac8f683499edddcfd4e42232982d0fd193004208a58ff6f353fde0012d35fdd72bc394') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
エラーが起こる場合

上記のコマンドを実行すると以下のようなエラーが出ることがあります。

Unable to find the wrapper "https" - did you forget to enable it when you configured PHP? in Command line code on line 1

出てくるエラー

これはphp.iniの設定が正しく行われていないため以下のように変更が必要です。

  1. c:\php\にphp.iniがあるかどうか → なければphp.ini-developmentをコピーしてphp.iniを作成する
  2. php.iniの中で"ssl"で検索し以下の記述があれば変更する
;extension=php_openssl.* 
↓
extension=php_openssl.*

実行して次のようなメッセージが出たら成功です。

All settings correct for using Composer
Downloading...
Composer (version 1.9.1) successfully installed to: /home/uedive/composer.phar
Use it: php composer.phar
composerコマンドを使えるようにする

windowsの場合このままではcomposerとコマンドプロンプトに入力しても動きません。

やるべきことは2つです。

  1. インストールで作成されたcomposer.pharc:\php\フォルダに移動させる
  2. c:\php\フォルダにcomposer.batを作成する

2のcomposer.batの内容は以下のようにして下さい。

echo @php "%~dp0composer.phar" %*>composer.bat
laravelをインストールする

それではlaravelのインストールに戻りましょう。

laravelインストーラをダウンロードします。

composer global require laravel/installer

すると以下のように出力されます。

Changed current directory to /home/[サーバID]/.config/composer
Using version ^3.0 for laravel/installer
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 14 installs, 0 updates, 0 removals
  - Installing symfony/process (v5.0.1): Downloading (100%)         
  - Installing symfony/polyfill-ctype (v1.13.1): Downloading (100%)         
  - Installing symfony/filesystem (v5.0.1): Downloading (100%)         
  - Installing psr/container (1.0.0): Downloading (100%)         
  - Installing symfony/service-contracts (v2.0.1): Downloading (100%)         
  - Installing symfony/polyfill-php73 (v1.13.1): Downloading (100%)         
  - Installing symfony/polyfill-mbstring (v1.13.1): Downloading (100%)         
  - Installing symfony/console (v5.0.1): Downloading (100%)         
  - Installing ralouphie/getallheaders (3.0.3): Downloading (100%)         
  - Installing psr/http-message (1.0.1): Downloading (100%)         
  - Installing guzzlehttp/psr7 (1.6.1): Downloading (100%)         
  - Installing guzzlehttp/promises (v1.3.1): Downloading (100%)         
  - Installing guzzlehttp/guzzle (6.5.0): Downloading (100%)         
  - Installing laravel/installer (v3.0.1): Downloading (100%)         
symfony/service-contracts suggests installing symfony/service-implementation
symfony/console suggests installing symfony/event-dispatcher
symfony/console suggests installing symfony/lock
symfony/console suggests installing psr/log (For using the console logger)
guzzlehttp/psr7 suggests installing zendframework/zend-httphandlerrunner (Emit PSR-7 responses)
guzzlehttp/guzzle suggests installing psr/log (Required for using the Log middleware)
Writing lock file
Generating autoload files
エラーが出る場合

以下のようなエラーが出てくる場合もphp.iniを編集します。

Problem 1 - laravel/framework v5.8.9 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.

出たエラー
;extension=mbstring
↓
extension=mbstring

[ad]

プロジェクトを作成する

composerコマンドで新しいプロジェクトを作成しましょう。

今回はmyprojectというプロジェクト名で作成します。

composer create-project --prefer-dist laravel/laravel myproject

エラーが出なければ成功です。

ページを表示する

cd myproject
php artisan serve

上のコマンドをコマンドプロンプトに打ち込みます。その後下のURLにアクセスしてみてください。

http://localhost:8000/

これで成功です!

とりあえずのインストールができたので次回からはプログラムを組んでいきましょう。

-WEB開発, プログラミング
-