まず、フレームを選択
PHPは、現在、4つの主流のフレームワーク、Yiiの、ThinkPHP、laravelとCodeIgniterのを持っています。
他のフレームワークの言語にPHPフレームワークは多少異なっています。PHPのフレームワークは、大きな、大きなものの一部です。
Java言語とは異なり、依存性注入の責任春、SpringMVC責任コントローラは、その職務を行うために関連データベース関連、SpringSecurity責任者の責任MyBatisの。しかしSpringBootは徐々に基盤フレームとなっています。
時間の制約のため、私は、各フレームを試して選択しませんでした。彼らの公式オンライン顔がデザインから、私は個人的にYiiのは、卓越したと考えだと思うが、ここでlaravelを勉強することを選択しました。
なぜ?GitHubの上のスターlaravelの数は、完全に他の3つのフレームの上に巻かので。ウェブ職人のためのPHPフレームワーク、ウェブPHPフレームワークの職人を変換します。また、私は自己紹介laravelは感謝しています。そして、それは繰り返しその構文は非常にエレガントであると強調しました。
第二に、開発環境を構築します
居
laravelは推奨laravel /家産を開発環境として。
それは何屋敷ですか?
公式の説明:Laravelホームステッドは公式あらかじめパッケージベイグラントボックスで、それはあなたのための完璧な開発環境を提供し、ローカルマシン、Webサーバや他のサーバソフトウェア上でPHPをインストールする必要があります。
だから、開発環境は、仮想マシンを提供して、本質的です。
これは、依存するベイグラント。
浮浪者とは何ですか?
浮浪者は、単一のワークフローでの仮想マシン環境を構築し、管理するためのツールです。
国内の開発者はベイグラントはあまりありません知っているが、彼らはドッカーをたくさん知っています。多くの場合、両方とも同じの性質。
仮想マシンを管理するのに適した浮浪者、管理アプリケーションに適しドッカ中。
ベイグラントは、仮想環境ツールを構築し、管理することであるので、あなたはまた、仮想環境を必要とする、屋敷は、仮想環境です。それは仮想マシンソフトウェアを選択する必要があるので、仮想環境は、仮想マシンが必要です。VMwareのかVirtualBoxの。
このソフトウェアは、VirtualBoxの自由、最も根本的な違いがvmwareの充電され、両者がほぼ同じ使用しています。
VMwareの安定した、高性能、多機能が、ボリュームが大きいです。小さい番号をVirtualBoxの。
私は4年近く16年から今までのVMwareを使用していますが、今年、私は、VMwareを使用しませんが、VirtualBoxのを回しました。、あなたが参照できる2つの理由があります。
1.私はあなたのフォリオのマシン環境と開発環境を分離することができますので、開発する仮想マシン環境を使用するために使用される前に。しかし、その後、私は、コンピュータに、ほぼすべての時間を使用するときに開発することがわかりました。使用環境や開発環境に合わせてマシンを置きます。
2.コストは、VMwareの料金はあまりにも高価です。
今、主に上記のCentOSでのいくつかのソフトウェアをテストするために、VirtualBoxのを使用します。
だから、シーンFrameworkの開発環境のために、私はVirtualBoxの使用をお勧めします。
我々は、仮想環境へのシェルアクセスの方法を使用しているので、シェルツールを持っている必要があるため。公式には、gitのはbashを使用することをお勧めします。
要約すると、ホームステッドは、以下のソフトウェアをインストールする必要があります。
-
Gitのbashの(実際には、この1非必須)
-
Hyper-Vの(VMは、ソフトウェアに依存しているMicrosoftの公式サイトをインストールしない場合は、一般的な主流のコンピュータは、必要があります)
-
VMwareの仮想またはボックス
-
浮浪者
設置環境は非常に複雑になり、そしてPHPを学んでも一部の学生は、設置環境、この段階で数日過ごすことになります。
そんなにトラブルので、なぜそれがホームステッドでしょうか?私たちは、0日目の開発環境上に構築はよくありませんか?ここでは公式の理由は、(説明)です。
https://learnku.com/articles/4668/why-do-you-have-to-use-homestead-to-develop-laravel-applications
ホームステッド自体トラブルの多くが公式用語、ホームステッドは、多くの問題を取り除くことができます。
VirtualBoxのをGitのとインストール
2つのソフトウェアのインストールおよび使用が比較的簡単です。ここではそれらを繰り返すわけではありません。
将来は、関連記事を書くことがあります。
それは遼雪峰教師Gitのチュートリアルをお勧めします。https://www.liaoxuefeng.com/wiki/896043488029600 。VirtualBoxのためとして、すべてのチュートリアルなし。これは、多目的利用となります。
インストールのホームステッド
オープンのgit bashは、次のコマンドを入力します。
放浪ボックスlaravel /屋敷を追加
このコマンドの役割は、屋敷の最新バージョンをインストールすることです。
しかし、国内のネットワークのダウンロード速度が非常に遅いですが、私は、ダウンロードの前に何回か試してみました。また、複数回試すことができます。
インストールコマンドに加えて、あなたはまた、インストールする前に、ローカルのボックスにファイルをダウンロードすることができます。しかし、これは他の問題かもしれません。私がインストールするには、この方法はお勧めしません。
インストール後に使用vagrant box list
、インストールが成功したかどうかを確認します。
家産ディレクトリを下にクローニング。
gitのクローンhttps://github.com/laravel/homestead.git
ダウンロードディレクトリの後、現在のフォルダにホームステッドが表示されます。
ホームステッドは、ルートディレクトリにinit.shファイルフォルダを持って、それを実行します。
バッシュinit.sh
上記の手順が完了し、処理がエラーに表示されない、それは問題を証明していません。
次に、ホームステッド・コンフィギュレーション・リンクにアクセスしてください。
コンフィギュレーション・ホームステッド
メインコンフィギュレーション内部に配置されたホームステッド、ホームステッドのルートディレクトリにHomestead.yamlファイルがあります。
次の行に沿って:
---
IP
鍵と公開鍵の設定オプションはgitのある認可、通常のファイルの場所を入力します。
マップは、あなたがマップするディレクトリホームステッドの仮想マシンを表現するために、私たちの本当のホストをマッピングするフォルダの下のオプションのリストを表します。
上記構成は、本機がするE:/project3/php/laravel
にマッピングすること/home/vagrant/code
。
ここを参照してください、あなたは非常に明確にする必要があり、ホームステッドは、Linux仮想マシンです。
サイトのオプションは、URLマッピングを表し、マップがマップされるファイルのディレクトリの仮想マシンを示すために、ブラウザに入力するアドレスを示しています。
その後、サイトを変更するだけでなく、hostsファイルを変更します。
窓は内のファイルをホストしC:\Windows\System32\drivers\etc\
、次。
あなたがhostsファイルを変更したくない場合は、することができます。そして、あなたは、ブラウザの入力は、例えば、上の構成として、ブラウザにIPアドレスを入力する必要が192.168.10.10
同じです。
データベースオプションは、データベースを表します。デフォルトのユーザー名は、MySQLデータベースの屋敷で、パスワードは秘密です
homestead.yamlファイルを設定した後、屋敷フォルダのルートオープンのgit bashは、実行vagrant up
放浪仮想マシンを起動するコマンドを。
全体のプロセスが問題でない場合は、より良い開発環境を構築します。
laravelプロジェクトの作成
このステップでは、あなたは最終的にlaravelプロジェクトを作成することができます。
laravelプロジェクトを作成するには、2つの方法があります。一つは、直接ローカルに作成され、1は、仮想マシンの作成を入力することです。その本質は同じです。
次のように作成された仮想マシンをステップ:
実装vanrant ssh
仮想マシンを着陸。
実行、ディレクトリマッピングに変更しcomposer create-project laravel/laravel Laravel --prefer-dist
laravelプロジェクトのLaravelというファイルを作成し、コマンド。
お使いのブラウザに入力するhttp://192.168.10.10/ たり、URLマッピングの設定を入力して、でも、成功した場合にはLaravelデフォルトのインターフェイスを参照してください。
第三に、ディレクトリ構造
これは、ルートディレクトリの下に次のディレクトリがあります。
-
app
ディレクトリは、アプリケーションのコアコードが含まれています。 -
bootstrap
ディレクトリは、ガイダンスフレームワークが含まれapp.php
た文書を。 -
config
名前が示すようにディレクトリは、アプリケーションがすべての設定ファイルが含まれています。 -
database
データファイルだけでなく、塗りつぶしと移行モデルファクトリクラスを含むディレクトリ。 -
public
ディレクトリエントリファイルが含まれているindex.php
、それはすべての要求のアプリケーションへのエントリポイントです。 -
resources
ディレクトリには、ビューと(例えばLESS、SASS、またはJavaScriptなど)コンパイルされていないリソースファイルが含まれています。 -
routes
ディレクトリは、すべてのルート定義のアプリケーションが含まれています。 -
storage
ブレードテンプレートディレクトリは、セッションセッションは、ファイル、キャッシュファイルを生成し、他のファイルはスケルトンを生成し、コンパイルが含まれています。 -
tests
ディレクトリは、自動化されたテストファイルが含まれています。 -
vendor
ディレクトリは、すべて含まれている作曲の依存関係を。
私たちは、ほとんどのアプリのディレクトリなので、メインのappディレクトリを見てコードに配置されています。
コントローラとミドルウェア
私たちは、それを私たちの最も重要なディレクトリについては、次のアプリカタログがHTTPディレクトリで、RESTfulなスタイルのAPIサービスを行う必要があります。
HTTPのディレクトリの下にのみコントローラーおよびミドルウェアの2つのフォルダとKernel.phpファイル。
コントローラのフォルダは、コントローラ、ミドルウェアミドルウェアです。カーネルは、ミドルウェアを管理するために使用されます。
コントローラの概念は、我々はすべて、言っても過言ではないと理解しておく必要があります。
ミドルウェアの概念は、Javaプログラマは、あなたが最初のフィルタとして全く印象理解できないことがあります。
ほとんどすべてのコアであるサービスMVCフレームワーク、など。
ルーティング
また、我々はまた、ルートディレクトリにあるファイルに注意を払う必要があります/routes/api.php
。このファイルは、ルートを管理するために使用されます。
使用済みのSpringフレームワークの学生は、春のルーティングおよび制御を一緒に入れている、知っている必要があります。これは、古い世代のサーバーのスタイルです。
laravelの春の練習は、そのフロントエンドの多くよりもエレガントで、主流のイデオロギーは非常に一貫しています。ルーティングコントローラから分離します。ルーティングコントローラによってジャンプ。