在经过了一段时间的开发后,我对Laravel框架的认识又在逐步的加深,对于这个世界占有量NO.1的框架...  我想说,我已经在逐步的感受到他的恐怖之处...

   一.建表--Laravel在数据库建表上有自己独立内置的结构,可以完全不用借助原生SQL语句或者SQLyogEnt、Navicat 这样的建表工具,进行数据库的建立,增删改查,和数据交互;我想这可能是它牢牢占据NO.1的一大靓点;在ThinkPHP中则需要我们借助SQL语句或者建表工具去逐步完善数据

    1.首先我们需要建立模型:我用的是gitbash,gitbash是Windows下的命令工具,基于msys GNU环境,有git分布式版本控制工具,主要应用于git.但是在Laravel里也可以直接使用     php artisan  make:model Models/GoodsModel -m 完成模型的创建和建表结构的创建(/database/migrations)

    

    2.向goods数据表填充数据,要注意数据的类型是严格区分的,并且一定要加..编程之友:注释君;添加完后使用php artisan migrate命令完成表的创建;可以自行YY下 多表同时创建的那种"还有谁"的感觉;

Schema::create('goods', function (Blueprint $table) {
$table->increments('id')->comment('商品主键');
$table->string('title')->comment('商品的标题');

    

    3.假设某个字段不符合要求或者需要添加字段怎么办,无须担心,从github中pull下项目后在数据表里直接修改  只需要用php artisan migrate:refresh

    ,然后今天的工作结束后push到github库里,其他小伙伴在更新后就可以直接使用新的数据表结构,而且还可以看到更改记录...这是开发者的一大福音~~

  二.ORM---在介绍建表时已经使用了创建模型的命令,php artisan make:model  XXX;Laravel里模型是对面向对象开发思想最好的诠释,让对象帮我们完成需求;

    摘自5.1手册:(Laravel 的 Eloquent ORM 提供了漂亮、简洁的 ActiveRecord 实现来和数据库进行交互。每个数据库表都有一个对应的「模型」可用来跟数据表进行交互。你可以通过模型查找数据表内的数据,以及将记录添加到数据表中。)

    本人在实际使用中也实实在在的感受到了通过创造模型对数据表操作带来的便利,譬如批量赋值,跨表查询,删除模型和软删除,模型关联,当然这些在TP框架中也可以利用模型实现,这一点属于仁者见仁智者见智;根据个人喜好而定

  三:session的用法

    1.ThinkPHP对Session操作进行了封装,并且无需引入就可以使用,Session的启动会在应用初始化的时候自动执行,所以无需手动使用Session::start() 来启动Session。
            使用Session类操作和普通方式调用$_SESSION来操作并没有本质不同,只是Session类很多参数可以根据项目配置来灵活设置,最常用的操作方法示例: // 检测Session变量是否存在:Session::is_set('name');  // 给Session变量赋值:Session::set('name','value');// 获取Session变量:Session::get('name');
    2.Laravel中Session的常用方法有
    $request->session()->get('key');//获取session里的某个键名
    $request->session()->set('key','default');//设定一个默认值,当指定键名不存在便返回默认值
    $request->session()->all()返回所有数据
    session('k'=>$v)写入session保存数据;
    以及闪存数据session()->flash();和保留特定数据->keep(['','']);

    也可以自定义session驱动

												

[麦先生]初学Laravel框架与ThinkPHP框架的不同(2)的更多相关文章

  1. [麦先生]初学Laravel框架与ThinkPHP的不同(1)

    作为一个PHP菜鸟初学Laravel框架 在学习过程中我发现了其与TP框架的不同点,由于时间问题和认识还不够完善我先写出其中几点,有错误的地方希望各位大牛斧正... 1.渲染模版方式的不同:在Lara ...

  2. 初学Laravel框架与ThinkPHP框架的不同

    作为一个PHP菜鸟初学Laravel框架 在学习过程中我发现了其与TP框架的不同点,由于时间问题和认识还不够完善我先写出其中几点,有错误的地方希望各位大牛斧正... 1.渲染模版方式的不同:在Lara ...

  3. Laravel框架与ThinkPHP框架的不同

    作为一个PHP菜鸟初学Laravel框架 在学习过程中我发现了其与TP框架的不同点,由于时间问题和认识还不够完善我先写出其中几点,有错误的地方希望各位大牛斧正... 1.渲染模版方式的不同:在Lara ...

  4. CI框架与Thinkphp框架的一些区别

    初学CI框架遇到的一些问题,与Thinkphp框架对比的不同之处. system             是框架核心 application        是项目目录 index.php        ...

  5. thinkphp框架使用心得

    接触的第一个PHP框架就是TP,在使用的了一段时间后就放弃了,说实话TP的弊端挺多,之后又接触laravel框架,慢慢的就爱上laravel这个框架了.这段时间由于公司的原因,又不得不使用thinkp ...

  6. 1 ThinkPHP框架初识

    一.PHP主流框架介绍 主流的框架有laravel.symfony.thinkphp MVC和三层结构 MVC可以说是一种开发模式,三层结构是一种开发习惯,严格来讲,他们两者是完全不同的概念,但是在实 ...

  7. 制作类似ThinkPHP框架中的PATHINFO模式功能

    一.PATHINFO功能简述 搞PHP的都知道ThinkPHP是一个免费开源的轻量级PHP框架,虽说轻量但它的功能却很强大.这也是我接触学习的第一个框架.TP框架中的URL默认模式即是PathInfo ...

  8. 攻城记:Thinkphp框架的项目规划总结和踩坑经验

    一.项目模块规划 1.项目分为PC端.移动端.和PC管理端,分为对应目录为 /Application/Home,/Application/Mobile,/Application/Admin: 对应入口 ...

  9. ThinkPHP框架的一些基础应用

    这是俺滴师傅给俺传授了的知识,特在此分享. TP框架,做PHP开发的都应该有所耳闻.下面,我们就来说说入口文件的生成: 创建新项目时,首先,在目录文件下创建一个新的文件夹.然后将Thinkphp框架文 ...

随机推荐

  1. CountUp.js – 让数字以非常有趣的动画方式显示

    CountUp.js 无依赖的.轻量级的 JavaScript 类,可以用来快速创建以一种更有趣的动画方式显示数值数据.尽管它的名字叫 countUp,但其实可以在两个方向进行变化,这是根据你传递的 ...

  2. Clipboard.js – 现代方式实现复制文本到剪贴板

    复制文本到剪贴板应该并不难,目前已经有很成熟的 Flash 方法.但是 Flash 已经在很多场合不适用了,特别是随着 HTML5 技术的发展.今天推荐的这个 Clipboard.js 库不依赖 Fl ...

  3. JavaScript学习笔记-函数

    函数的两种创建方式:函数定义表达式.函数声明语句 编译时,函数声明语句创建的函数会‘被提前’至外部函数的作用域顶部,在该作用域内可以被随意调用: 而函数表达式创建的函数,要调用它必须赋值给一个变量,编 ...

  4. python任务执行之线程,进程,与协程

    一.线程 线程为程序中执行任务的最小单元,由Threading模块提供了相关操作,线程适合于IO操作密集的情况下使用 #!/usr/bin/env python # -*- coding:utf-8 ...

  5. SharePoint 2013 – Workflow Manager 1.0 offline download

    [http://sharepointdeal.wordpress.com/2013/03/13/sharepoint-2013-workflow-manager-1-0-offline-downloa ...

  6. Android 生成xml文件

    生成XML文件备份短信,其格式为: <?xml version="1.0" encoding="UTF-8" standalone="true& ...

  7. TextView 字数限制

    给大家推荐一个  无bug的 字数限制   http://blog.csdn.net/u012460084/article/details/50377928

  8. 常见HTTP状态码

    常见HTTP状态码 200 OK 301 Moved Permanently 302 Found 304 Not Modified 307 Temporary Redirect 400 Bad Req ...

  9. mysql一些小技巧

    1 强制命中索引:force index 某些时候查询,索引会失效,可以进行强制命中索引 2 group_concat 能将相同的行组合起来. 当然,我推荐这种操作可以在代码中操作,如果必须在特定情况 ...

  10. 让UNION与ORDER BY并存于SQL语句当中

    在SQL语句中,UNION关键字多用来将并列的多组查询结果(表)合并成一个结果(表),简单实例如下: SELECT [Id],[Name],[Comment] FROM [Product1] UNIO ...