Laravel for Windows 开发环境配置

Posted 从前端开发到全栈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel for Windows 开发环境配置相关的知识,希望对你有一定的参考价值。

本文为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.php 和 Page.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条数据。

 
 












以上是关于Laravel for Windows 开发环境配置的主要内容,如果未能解决你的问题,请参考以下文章

开发环境搭建 - Windows |《Laravel 开发环境部署 7.x》

开发环境搭建 - Windows |《Laravel 开发环境部署 7.x》

Windows上使用Vagrant打造Laravel Homestead可协同跨平台开发环境

Windows上使用Vagrant打造Laravel Homestead可协同跨平台开发环境

iBrand 教程 0.1:Windows + Homestead 5 搭建 Laravel 开发环境

laravel自带队列和redis实现队列哪个效率高