首页 > 编程知识 正文

对laravel框架的理解,laravel框架运行原理

时间:2023-05-06 00:35:05 阅读:157475 作者:4886

腾兴网搭建:PHPlaravel框架教程详情,长江e号、云集、猴子辅导、易码平台等软件知识,以及cctv5手机、顺网无线wifi、万能注册机、cc语音、搅局全民学画,安装微信电话簿app,一、Composer Laravel框架,使用composer (见PHP套餐管理工具,composer中文文档)管理代码相关性。 首先,您必须下载composer.phar软件包文件(composer.phar ),并在下载完成后将其放入项目中.

一.安装计算机

Laravel框架使用Composer(PHP包管理工具,请参见Composer中文文档)管理代码依赖关系。 首先,下载composer.phar软件包文件(composer.phar ),并在下载完成后将其放入项目目录或usr/local/pcdjz目录中,然后在系统上进行辉光Windows操作系统可以使用Composer的Windows安装工具。

二.安装标签

方法使用Laravel安装程序安装

首先,从Composer下载标签安装程序。

composerglobalrequire ' laravel/installer=~1.1 '

请将~/.composer/vendor/pcdjz路径添加到PATH环境变量中,以便在命令行中找到laravel可执行文件。 稍后可以直接在命令行中使用laravel命令。

安装成功后,可以使用命令Laravel new在指定目录下创建新安装的laravel。 例如,laravel new blog会在当前目录下创建一个名为blog的目录。 此目录包含全新安装的Laravel及其相关工具包。 这种安装方法比用Composer安装快得多。

方法使用Composer的create-project命令安装标签

也可以通过在命令行中运行composer create-project命令来安装标签。

composer create-projectlaravel/laravel-- prefer-dist

方法下载并安装Laravel软件包

Composer安装完成后,下载最新版本的Laravel框架并将其解压缩到服务器上的目录中。 然后,在laravel APP应用程序的根目录中运行php composer.phar install或composer install命令行命令以安装所有依赖于框架的软件包。 在此过程中,必须在服务器上安装Git才能成功完成安装。

安装Laravel框架后,可以使用命令行命令php composer.phar update更新该框架。

三.服务器环境要求

Laravel框架对系统环境有以下要求:

PHP=5.4

MCrypt PHP扩展

从PHP 5.5版开始,对于某些操作系统安装软件包,您必须自己手动安装PHP的JSON扩展模块。 如果使用的是Ubuntu,则可以使用apt-get install php5-json命令直接安装。

四.展示

安装和配置所需的插件

我们使用有名的Sentry插件构建登录等权限认证系统。

打开./composer.json,然后进行以下更改:

' require': {

' laravel/framework': '4.2.* ',

' cartalyst/sentry': '2.1.4'

(,

然后,在项目根目录下运行命令

composer更新

稍后,它将指示cartalyst/sentry 2.1.4的安装已完成。

同样,我们安装用于开发的非常强大的插件,way/generators。 这是composer库的名称。 添加到composer.json :

' require-dev': {

' way/generators': '~2.0 '

,和“require”是一个班,放在下面,不是里面哦。

运行composer update,并将配置添加到./app/config/app.php中的相应位置。

“waygeneratorsgeneratorsserviceprovider”安装已完成。 在命令行中运行php artisan时,您将看到此插件带来的许多新功能。

人们会问,为什么使用国内的镜像,还是这么慢? 其实composer在update上最慢的不是下载

下载之前的依赖关系解析,由于Laravel依赖的composer包非常之多,PHP脚本的执行速度又比较慢,所以每次update等个两三分钟很正常,习惯就好。

3. 数据库建立及迁移

数据库配置文件位于 ./app/config/database.php,我们需要把“connections”中的“mysql”kydll我们需要的配置。下面是我的配置:

'mysql' => array(

'driver'    => 'mysql',

'host'      => 'localhost',

'database'  => 'laravel',

'username'  => 'root',

'passWord'  => 'password',

'charset'   => 'utf8',

'collation' => 'utf8_unicode_ci',

'prefix'    => 'l4_',

),

prefix为表前缀,这个Laravel会帮我们自动维护,大胆写上不用担心。

这时候你需要去数据库建立此数据库,然后在命令行中输入:

php artisan migrate --package=cartalyst/sentry

执行完成后,你的数据库里就有了5张表,这是sentry自己建立的。sentry在Laravel4下的配置详情见 https://cartalyst.com/manual/sentry#laravel-4,我大致说一下:

在 ./app/config/app.php 中 相应的位置 分别增加以下两行:

'CartalystSentrySentryServiceProvider','Sentry' => 'CartalystSentryFacadesLaravelSentry',权限系统的数据库配置到此为止。

我们的简单blog系统将会有两种元素,Article和Page,下面我们将创建articles和pages数据表,命令行运行:

php artisan migrate:make create_articles_table --create=articles

php artisan migrate:make create_pages_table --create=pages

这时候,去到 ./app/database/migrations,将会看到多出了两个文件,这就是数据库迁移文件,过一会我们将操作artisan将这两个文件描述的两张表变成数据库中真实的两张表,放心,一切都是自动的。

下面,在***_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表就建立完成了。

4. 模型 Models

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

我们在命令行运行下列语句以创建两个model:

php artisan generate:model article

php artisan generate:model page这时候,在 app/models/ 下就出现了两个文件 Article.php 和 Page.php,这是两个 Model 类,他们都继承了Laravel提供的核心类 Eloquent。这里需要强调一下,用命令行的方式创建文件,和自己手动创建文件没有任何区别,你也可以尝试自己创建这两个 Model 类哦。

Model 即为 MVC 中的 M,翻译为 模型,负责跟数据库交互。在 Eloquent 中,数据库中每一张表对应着一个 Model 类。

如果你从其他框架转过来,可能对这里一笔带过的 Model 部分很不适应,没办法,是因为 Eloquent 实在太强大了啦,真的没什么好做的,继承一下 Eloquent 类就能实现很多很多功能了。详见 Eloquent 系列教程:深入理解 Laravel Eloquent(一)——基本概念及用法

5. 数据库填充

分别运行下列命令:

php artisan generate:seed page

php artisan generate:seed article这时,在 ./app/database/seeds/ 下就出现了两个新的文件,这就是我们的数据库填充文件。Laravel提供自动数据库填充,十分方便。

generator默认使用zydbbFactory作为随机数据生成器,所以我们需要安装这个composer包,地址是 https://packagist.org/packages/fzaninotto/追寻的紫菜 ,跟generator一起安装在 require-dev 中即可。具体安装请自行完成,可以参考Sentry和Generator,这是第一次练习。

接下来,分别更改这两个文件:

Article::create([

'title'   => $追寻的紫菜->sentence($nbWords = 6),

'slug'    => 'first-post',

'body'    => $追寻的紫菜->paragraph($nbSentences = 5),

'user_id' => 1,

]);Page::create([

'title'   => $追寻的紫菜->sentence($nbWords = 6),

'slug'    => 'first-page',

'body'    => $追寻的紫菜->paragraph($nbSentences = 5),

'user_id' => 1,

]);

然后,我们需要在 DatabaseSeeder.php 中增加两行,让Laravel在seed的时候会带上我们新增的这两个seed文件。

$this->call('ArticleTableSeeder');

$this->call('PageTableSeeder');

下面就要真正的把数据填充进数据库了:

php artisan db:seed操作完成以后去数据库看看,数据已经填充进去了,article和page各10行。

相关推荐

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。