1. 程式人生 > >Laravel for Windows 開發環境配置

Laravel for Windows 開發環境配置

let osi host func replace sys 模型 _id span

本文為CSDN Choris 原創,轉載請事先征得作者同意,以示尊重!

原文:http://blog.csdn.net/choris/article/details/50215835

Laravel配置教程

本文在參考歲寒博客Laravel 5 系列入門教程(一)【最適合中國人的 Laravel 教程】的基礎上寫成1。

1.XAMPP集成開發環境

Laravel是一個PHP開發框架,用Laravel框架開發的網站需要運行於有PHP+數據庫+web服務器的操作系統上。一般要求PHP版本5.4+,MySQL5.1+。本文選擇PHP+MySQL數據庫+Apache web服務器。在Windows下可以下載並安裝最新版XAMPP集成開發環境,點擊到XAMPP官網下載。

2.安裝Composer

Laravel需要使用Composer來管理其依賴性。所以,在使用Laravel之前,必須確認在電腦上已經安裝了Composer。
Windows下安裝Composer非常簡單,可以像安裝XAMPP一樣,下載並安裝Composer-Setup.exe安裝程序即可。點擊到Composer中文網下載2。
安裝完成後輸入以下指令檢測是否安裝成功:

composer -V

3.配置Composer使用中國全量鏡像

由於訪問國外網站或者被墻的原因,如果直接使用默認Composer源速度會非常慢而且很可能不能訪問。幸運的是,國內的IT工作者制作了Packagist/Composer的中國全量鏡像。可以參考Composer中文網的教程配置3,本文下面也會詳述配置步驟。

有兩種方法啟用本鏡像服務:

  1. 將配置信息添加到 Composer 的配置文件 config.json 中(系統全局配置)
  2. 將配置信息添加到單個項目的 composer.json 文件中(單個項目配置)

本文選擇第一種配置方法:
打開命令行窗口(windows用戶)或控制臺(Linux、Mac用戶)並執行如下命令:

composer config -g repositories.packagist composer http://packagist.phpcomposer.com

說明

使用本鏡像服務就意味著下載的所有的安裝包元數據都將來自本鏡像服務,而不再向 packagist.org 發起請求。這將加速


Composer 的安裝過程,並且更加可靠、快速。(由於眾所周知的原因,國外的網站連接速度太慢,並且隨時可能被墻)

一般情況下,安裝包的數據(zip 文件等)一般是從 GitHub
或其他第三方服務器上下載的,使用本鏡像服務後,我們會緩存所有安裝包到國內的機房,這樣就不必再去向國外的網站發起請求,因此,即使
packagist.org、github.com 或其他第三方服務發生故障(主要是連接速度太慢和被墻),你仍然可以下載、更新安裝包。

4.使用Composer安裝Laravel5

鏡像配置完成後,切換到你想要安裝的目錄下,xampp下Apache的安裝路徑為:

C:\xampp\htdocs

切換到該目錄下,運行命令提示符cmd,輸入如下命令:

composer create-project laravel/laravel learnlaravel5 5.0.22

安裝完成後在當前目錄下會生成一個目錄learnlaravel5,如下圖所示:
技術分享

打開xampp並開啟Apache服務器,在瀏覽器中輸入Laravel主目錄:

“ip:端口/laravel安裝目錄 / public” (默認80端口可省略)
在我的本機上為:
localhost/learnlaravel5/public

可以看到Laravel安裝成功地界面:
技術分享


以上四步是安裝Laravel的主要步驟,後續主要講解如何使用和開發

5.數據庫建立及遷移

Laravel 5 把數據庫配置的地方改到了 learnlaravel5/.env,打開這個文件,編輯下面四項,修改為正確的信息:

DB_HOST=localhost

DB_DATABASE=laravel5

DB_USERNAME=root

DB_PASSWORD=password

推薦新建一個名為 laravel5 的數據庫,為了學習方便,推薦使用 root 賬戶直接操作。

Laravel 已經為我們準備好了 Auth 部分的 migration,運行以下命令執行數據庫遷移操作:

php artisan migrate

得到如下結果:
技術分享
如果你運行命令報錯,請檢查數據庫連接設置。至此,數據庫遷移已完成,你可以打開localhost/learnlaravel5/public/home
進行註冊和登陸啦。

6.模型Models

接下來我們將接觸Laravel最為強大的部分,Eloquent ORM,運行以下命令:

php artisan make:model Article
php artisan make:model Page

Laravel 4 時代,我們使用 Generator 插件來新建 Model。現在,Laravel 5 已經把 Generator集成進了 Artisan

現在,Artisan 幫我們在 learnlaravel5/app/ 下創建了兩個文件 Article.phpPage.php,這是兩個 Model 類,他們都繼承了 Laravel Eloquent 提供的 Model 類 Illuminate\Database\Eloquent\Model,且都在 \App 命名空間下。這裏需要強調一下,用命令行的方式創建文件,和自己手動創建文件沒有任何區別,你也可以嘗試自己創建這兩個 Model 類。

Model 即為 MVC 中的 M,翻譯為模型,負責跟數據庫交互。在 Eloquent 中,數據庫中每一張表對應著一個 Model 類(當然也可以對應多個)。

如果你想深入地了解 Eloquent,可以閱讀系列文章:深入理解 Laravel Eloquent(一)——基本概念及用法

接下來進行 Article 和 Page 類對應的 articles 表和 pages表的數據庫遷移,進入 learnlaravel5/database/migrations 文件夾。
在 ***_create_articles_table.php 中修改:

Schema::create(‘articles‘, function(Blueprint $table)
{
    $table->increments(‘id‘);
    $table->string(‘title‘);
    $table->string(‘slug‘)->nullable();
    $table->text(‘body‘)->nullable();
    $table->string(‘image‘)->nullable();
    $table->integer(‘user_id‘);
    $table->timestamps();
});

在 ***_create_pages_table.php 中修改:

Schema::create(‘pages‘, function(Blueprint $table)
{
    $table->increments(‘id‘);
    $table->string(‘title‘);
    $table->string(‘slug‘)->nullable();
    $table->text(‘body‘)->nullable();
    $table->integer(‘user_id‘);
    $table->timestamps();
});

然後執行命令

php artisan migrate

成功以後, articles 表和 pages 表已經出現在了數據庫裏。

7.數據庫填充 Seeder

learnlaravel5/database/seeds/ 下新建 PageTableSeeder.php 文件,內容如下:

<?php

use Illuminate\Database\Seeder;
use App\Page;

class PageTableSeeder extends Seeder {

  public function run()
  {
    DB::table(‘pages‘)->delete();

    for ($i=0; $i < 10; $i++) {
      Page::create([
        ‘title‘   => ‘Title ‘.$i,
        ‘slug‘    => ‘first-page‘,
        ‘body‘    => ‘Body ‘.$i,
        ‘user_id‘ => 1,
      ]);
    }
  }

}

然後修改同一級目錄下的 DatabaseSeeder.php中:

// $this->call(‘UserTableSeeder‘);

這一句為

$this->call(‘PageTableSeeder‘);

然後運行命令進行數據填充:

composer dump-autoload
php artisan db:seed

查看pages表,裏面新增了10條數據。


  1. 歲寒博客Laravel 5 系列入門教程(一)【最適合中國人的 Laravel 教程】 ?
  2. Composer中文網 ?
  3. Composer全量中國鏡像 ?

Laravel for Windows 開發環境配置