サーチ…


インストール

Laravelアプリケーションは、一般的なPHP依存マネージャであるComposerを使用してインストールおよび管理されます。新しいLaravelアプリケーションを作成するには、2つの方法があります。

作曲家経由

$ composer create-project laravel/laravel [foldername]

または

$ composer create-project --prefer-dist laravel/laravel [foldername]

[foldername]に、新しいLaravelアプリケーションをインストールするディレクトリの名前を入力します。インストール前に存在してはなりません。また、Composer実行可能ファイルをシステムパスに追加する必要があります。

特定のバージョンのフレームワークを使用してLaravelプロジェクトを作成したい場合は、バージョンパターンを提供することができます。そうしないと、プロジェクトは最新の使用可能なバージョンを使用します。

たとえば、Laravel 5.2でプロジェクトを作成する場合は、次のように実行します。

$ composer create-project --prefer-dist laravel/laravel 5.2.*

なぜ--prefer-dist

パッケージをダウンロードするには、 sourcedist 2つの方法があります。安定版の場合、Composerはデフォルトでdistを使用します。 sourceはバージョン管理リポジトリです。 --prefer-sourceが有効な場合、Composerはソースからインストールします。

--prefer-dist--prefer-source反対であり、 --prefer-source distからインストールするようにComposerに指示します。これにより、ビルドサーバーやベンダーの更新プログラムを通常は実行しないその他の使用例では、インストールが大幅に高速化されます。また、適切な設定がないと、Gitの問題を回避できます。

Laravelインストーラを介して

Laravelは、Laravelアプリケーションをすばやく作成するための便利なコマンドラインユーティリティを提供します。まず、インストーラをインストールします。

$ composer global require laravel/installer

Laravelインストーラを実行するには、Composerバイナリフォルダが$ PATH変数内にあることを確認する必要があります。

まず、$ PATH変数にすでに入っているかどうか調べてください

echo $PATH

すべてが正しければ、出力は次のようになるはずです:

Users/yourusername/.composer/vendor/bin

そうでない場合は、 .bashrc編集するか、ZSHを使用している場合は.zshrcを編集して、Composerベンダーディレクトリへのパスを.zshrcます。

このコマンドをインストールすると、指定したディレクトリに新しいLaravelインストールが作成されます。

laravel new [foldername]

あなたも使うことができます. [foldername]の代わりに(ドット)を使用して、現在の作業ディレクトリにサブディレクトリを作成せずにプロジェクトを作成します。

アプリケーションの実行

Laravelには、PHPベースのWebサーバーがバンドルされています。このWebサーバーは、

$ php artisan serve

デフォルトでは、HTTPサーバーはポート8000を使用しますが、ポートが既に使用中である場合や、一度に複数のLaravelアプリケーションを実行する場合は、使用することができます--port別のポートを指定するフラグ:

$ php artisan serve --port=8080

HTTPサーバーは、アプリケーションを実行するためのデフォルト・ドメインとしてlocalhostを使用しますが、-- --hostフラグを使用して別のアドレスを指定することができます。

$ php artisan serve --host=192.168.0.100 --port=8080

別のサーバーを使用する

別のWebサーバーソフトウェアを使用する場合は、プロジェクトのpublicディレクトリ内にいくつかの設定ファイルが用意されています。 Apacheの場合は.htaccess 、ASP.NETの場合はweb.config 。 NGINXなどの他のソフトウェアの場合、さまざまなオンラインツールを使用してApache構成を変換できます。


このフレームワークでは、Webサーバーユーザーは次のディレクトリへの書き込み権限を持っている必要があります。

  • /storage
  • /bootstrap/cache

* nixオペレーティングシステムでは、これは

chown -R www-data:www-data storage bootstrap/cache
chmod -R ug+rwx storage bootstrap/cache

www-dataはWebサーバーユーザーの名前とグループです)


選択したWebサーバは、プロジェクトの/publicディレクトリのコンテンツを提供するように設定する必要があります。通常は、ドキュメントルートとして設定します。残りのプロジェクトは、Webサーバーからアクセスできないようにする必要があります。

すべてを正しく設定した場合、ウェブサイトのURLに移動すると、Laravelのデフォルトのランディングページが表示されます。

要件

Laravelフレームワークには次の要件があります。

5.3
  • PHP> = 5.6.4
  • XML PHP拡張機能
  • PDO PHPエクステンション
  • OpenSSL PHPエクステンション
  • Mbstring PHPエクステンション
  • Tokenizer PHP拡張モジュール
5.1(LTS) 5.2
  • PHP> = 5.5.9
  • PDO PHPエクステンション
  • Laravel 5.1は、PHP 7.0をサポートするLaravelの最初のバージョンです。
5.0
  • PHP> = 5.4、PHP <7
  • OpenSSL PHPエクステンション
  • Tokenizer PHP拡張モジュール
  • Mbstring PHPエクステンション
  • JSON PHP拡張(PHP 5.5のみ)
4.2
  • PHP> = 5.4
  • Mbstring PHPエクステンション
  • JSON PHP拡張(PHP 5.5のみ)

Hello Worldの例(コントローラとビューの使用)

  1. Laravelアプリケーションを作成する:

    $ composer create-project laravel/laravel hello-world
    
  2. プロジェクトフォルダに移動します。

    $ cd C:\xampp\htdocs\hello-world
    
  3. コントローラーを作成する:

    $ php artisan make:controller HelloController --resource
    

これによりapp / Http / Controllers / HelloController.phpファイルが作成されます。 --resourceオプションは、コントローラのCRUDメソッド(index、create、show、updateなど)を生成します。

  1. HelloControllerのindexメソッドへのルートを登録します。この行をapp / Http / routes.php (バージョン 5.0〜5.2 またはroutes / web.php (バージョン5.3)に追加してください:
    Route::get('hello', 'HelloController@index');

新しく追加されたルートを見るには、 $ php artisan route:list

  1. viewsディレクトリにブレードテンプレートを作成します。

    resources / views / hello.blade.php:

    <h1>Hello world!</h1>
    
  2. 次に、 hello.blade.phpテンプレートを表示するようindexメソッドに指示します:

    アプリ/ Http /コントローラ/ HelloController.php

    <?php
    
    namespace App\Http\Controllers;
    
    use Illuminate\Http\Request;
    
    use App\Http\Requests;
    
    class HelloController extends Controller
    {
        /**
         * Display a listing of the resource.
         *
         * @return \Illuminate\Http\Response
         */
        public function index()
        {
            return view('hello');
        }
    
        // ... other resources are listed below the index one above

次のPHP Artisan Commandを使用してアプリケーションを提供することができます: php artisan serve ;アプリケーションにアクセスできるアドレスが表示されます(通常はデフォルトでhttp:// localhost:8000になります)

または、ブラウザの適切な場所に直接向けることもできます。 XAMPP( http:// localhost / hello-world / public / hello)のようなサーバーを使用している場合は、以下のようにxampp / htdocsディレクトリにLaravelインスタンスhello-worldを直接インストールする必要があります。あなたのコマンドラインインターフェイスからこのHello Wordのステップ1、 xampp / htdocsディレクトリを参照してください)

Hello Worldの例(基本)

ルートファイルを開く。次のコードを貼り付けます。

Route::get('helloworld', function () {
    return '<h1>Hello World</h1>';
});

localhost/helloworldをルーティングすると、 Hello Worldが表示されます。

routesファイルは次の場所にあります。

5.3

Web用

routes/web.php

APIの場合

routes/api.php
5.2 5.1(LTS) 5.0
app/Http/routes.php
4.2
app/routes.php 

LaraDock(Laravel Homestead for Docker)を使用したインストール

LaraDockは開発環境のようなLaravel Homesteadですが、Vagrantの代わりにDockerのためのものです。 https://github.com/LaraDock/laradock

インストール

* GitとDockerが必要です

LaraDockリポジトリをクローン:

A.既にLaravelプロジェクトをお持ちの場合は、このリポジトリをLaravelのルートディレクトリに複製してください:

git submodule add https://github.com/LaraDock/laradock.git

B. Laravelプロジェクトをお持ちでなく、DockerからLaravelをインストールする場合は、マシン上の任意の場所にこのレポをクローンしてください:

git clone https://github.com/LaraDock/laradock.git

基本的な使用法

  1. コンテナを実行する(docker-composeコマンドを実行する前にlaradockフォルダにいることを確認する)。

    例:NGINXとMySQLを実行する:docker docker-compose up -d nginx mysql

    使用可能なコンテナのリストがあり、独自の組み合わせを作成するために選択できます。

    nginxhhvmphp-fpmmysqlredispostgresmariadbneo4jmongoapache2caddymemcachedbeanstalkdbeanstalkd-consoleworkspace

  2. Workspaceコンテナに入り、(Artisan、Composer、PHPUnit、Gulp、...)のようなコマンドを実行します。

    docker-compose exec workspace bash

  3. Laravelプロジェクトがまだインストールされていない場合は、DockerコンテナからLaravelをインストールする手順に従います。

    a。ワークスペースコンテナを入力します。

    b。 Laravelをインストールします。 composer create-project laravel/laravel my-cool-app "5.3.*"

  4. Laravel設定を編集します。 Laravelの.envファイルを開き、DB_HOSTをmysqlに設定します:

    DB_HOST=mysql

  5. ブラウザを開き、ローカルホストのアドレスにアクセスしてください。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow