加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Laravel 5 框架入门(一)

发布时间:2020-12-14 19:52:16 所属栏目:大数据 来源:网络整理
导读:《PHP实例:Laravel 5 框架入门(一)》要点: 本文介绍了PHP实例:Laravel 5 框架入门(一),希望对您有用。如果有疑问,可以联系我们。 PHP编程 Laravel 5 中文文档: PHP编程 1. http://laravel-china.org/docs/5.0 PHP编程 2. http://www.golaravel.com

《PHP实例:Laravel 5 框架入门(一)》要点:
本文介绍了PHP实例:Laravel 5 框架入门(一),希望对您有用。如果有疑问,可以联系我们。

PHP编程Laravel 5 中文文档:

PHP编程1. http://laravel-china.org/docs/5.0

PHP编程2. http://www.golaravel.com/laravel/docs/5.0/

PHP编程默认条件

PHP编程本文默认你已经有配置完善的 PHP + MySQL 运行环境,懂得 PHP 网站运行的基础知识.跟随本教程走完一遍,你将会得到一个基础的包含登录的简单 blog 系统,并将学会如何使用一些强大的 Laravel 插件和 composer 包(Laravel 插件也是 composer 包).

PHP编程软件版本:PHP 5.4+,MySQL 5.1+

PHP编程本文不推荐完全不懂 PHP 与 MVC 编程的人学习.本文不是 “一步一步跟我做” 教程.本文需要你付出一定的心智去解决一些或大或小的暗藏任务,以达到真正理解 Laravel 运行逻辑的目的.

PHP编程1. 安装

PHP编程许多人被拦在了学习Laravel的第一步,安装.并不是因为安装教程有多复杂,而是因为【众所周知的原因】.在此我推荐一个composer全量中国镜像:http://pkg.phpcomposer.com/ .推荐以 “修改 composer 的配置文件” 方式配置.

PHP编程镜像配置完成后,切换到你想要放置该网站的目录下(如 C:wwwroot、/Library/WebServer/Documents/、/var/www/html、/etc/nginx/html 等),运行命令:

PHP编程
composer create-project laravel/laravel learnlaravel5

PHP编程然后,稍等半晌,当前目录下就会出现一个叫 learnlaravel5 的文件夹.

PHP编程然后将网站根目录配置为 learnlaravel5/public.

PHP编程如果你不会配置,建议去学会配置,网上资料很多.如果自暴自弃,可以把 的第 29 行'url' => 'http://localhost',配置成你的子目录地址,注意,要一直配置到 ***/learnlaravel5/public.

PHP编程使用浏览器拜访你配置的地址,将看到以下画面(我在本地配置的地址为 http://fuck.io:88 ):

PHP编程

PHP编程2. 体验 Auth 系统并完成安装

PHP编程―― 经过上面的过程,Laravel 5 的安装成功了?

PHP编程―― 没有o(s□t)o

PHP编程查看路由文件 `learnlaravel5/app/Http/routes.php` 的代码:

PHP编程
Route::get('/','WelcomeController@index');
Route::get('home','HomeController@index');
Route::controllers([
 'auth' => 'AuthAuthController','password' => 'AuthPasswordController',]);

PHP编程跟随代码里的蛛丝马迹,让我们拜访 http://fuck.io:88/home (请自行替换域名),结果竟然跳转到了登陆页?

PHP编程

PHP编程没错,Laravel 自带了开箱即用的 Auth 系统,连页面都已经写好了.

PHP编程让我们随意输入邮箱和暗码,点击登录,你很可能得到以下画面(Mac 或 Linux 下):

PHP编程

PHP编程为什么空白?用开发者工具查看,这个哀求的状态码是 500,为什么?

PHP编程因为 `learnlaravel5/storage` 目录没有 777 权限.

PHP编程执行 shell 命令:

PHP编程
cd learnlaravel5
sudo chmod -R 777 storage

PHP编程重新访问 http://fuck.io:88/home,随意输入邮箱和暗码,如果你得到以下画面:

PHP编程

PHP编程那么恭喜你~ Laravel 5 安装成功!

PHP编程不想配置镜像的同学,可以使用 Laravel 界非常著名的 安正超 搞的安装神器:https://github.com/overtrue/latest-laravel

PHP编程3. 数据库建立及迁移

PHP编程Laravel 5 把数据库配置的地方改到了 `learnlaravel5/.env`,打开这个文件,编辑下面四项,修改为正确的信息:

PHP编程
DB_HOST=localhost
DB_DATABASE=laravel5
DB_USERNAME=root
DB_PASSWORD=password

PHP编程推荐新建一个名为 laravel5 的数据库,为了学习方便,推荐使用 root 账户直接操作.

PHP编程Laravel 已经为我们准备好了 Auth 部分的 migration,运行以下命令执行数据库迁移操作:

PHP编程
php artisan migrate

PHP编程得到的结果如下:

PHP编程

PHP编程如果你运行命令报错,请检查数据库连接设置.

PHP编程至此,数据库迁移已完成,你可以打开 http://fuck.io:88/home 欢快地尝试注册、登录啦.

PHP编程4. 模型 Models

PHP编程接下来我们将接触Laravel最为强大的部分,Eloquent ORM,真正提高生产力的地方,借用库克的一句话:鹅妹子英!

PHP编程运行一下命令:

PHP编程
php artisan make:model Article
php artisan make:model Page

PHP编程> Laravel 4 时代,我们使用 Generator 插件来新建 Model.现在,Laravel 5 已经把 Generator 集成进了 Artisan.

PHP编程现在,Artisan 帮我们在 `learnlaravel5/app/` 下创建了两个文件 `Article.php` 和 `Page.php`,这是两个 Model 类,他们都继承了 Laravel Eloquent 提供的 Model 类 `IlluminateDatabaseEloquentModel`,且都在 `App` 命名空间下.这里需要强调一下,用命令行的方式创建文件,和自己手动创建文件没有任何区别,你也可以尝试自己创建这两个 Model 类.

PHP编程Model 即为 MVC 中的 M,翻译为 模型,负责跟数据库交互.在 Eloquent 中,数据库中每一张表对应着一个 Model 类(当然也可以对应多个).

PHP编程如果你从其他框架转过来,可能对这里一笔带过的 Model 部分很不适应,没方法,是因为 Eloquent 实在太强大了啦,真的没什么好做的,继承一下 Eloquent 类就能实现很多很多功能了.

PHP编程如果你想深入地了解 Eloquent,可以阅读系列文章:Laravel 5框架学习之Eloquent 关系

PHP编程接下来进行 Article 和 Page 类对应的 articles 表和 pages表的数据库迁移,进入 `learnlaravel5/database/migrations` 文件夹.

PHP编程在 ***_create_articles_table.php 中修改:

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();
});

PHP编程在 ***_create_pages_table.php 中修改:

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编程然后执行命令:

PHP编程
php artisan migrate

PHP编程成功以后,tables 表和 pages 表已经出现在了数据库里,去看看吧~

PHP编程5. 数据库填充 Seeder

PHP编程在 `learnlaravel5/database/seeds/` 下新建 `PageTableSeeder.php` 文件,内容如下:

PHP编程
<?php
use IlluminateDatabaseSeeder;
use AppPage;
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,]);
  }
 }
}

PHP编程然后修改同一级目录下的 `DatabaseSeeder.php`中:

PHP编程
// $this->call('UserTableSeeder');

PHP编程这一句为

PHP编程
$this->call('PageTableSeeder');

PHP编程然后运行命令进行数据填充:

PHP编程
composer dump-autoloadphp artisan db:seed

PHP编程去看看 pages 表,是不是多了十行数据?

PHP编程本教程示例代码见:https://github.com/johnlui/Learn-Laravel-5

PHP编程大家在任何地方卡住,最快捷的办理方式就是去看我的示例代码.

PHP编程以上所述就是本文的全部内容了,希望能够对大家学习Laravel5框架有所赞助.

欢迎参与《PHP实例:Laravel 5 框架入门(一)》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读