http://my.oschina.net/tongjh/blog/194231

http://baike.baidu.com/view/1020297.htm

一、laravel路由(应用中的大多数路由都会定义在 app/routes.php 文件中)

routes.php

1 Route::get('/test','TestController@index');

一个路由就定义好了,当访问 http://xxx.com/public/index.php/test 时就会去找 app/controllers/TestController.php的index方法 
TestController.php

1 class TestController extends Controller{   
2     public function index(){       
3         echo "hello world";
4     }
5 }

一个控制器就建立好了,控制器也可以设置闭包,也可以设置别名

1 Route::get('user/profile'array('as' => 'profile'function()
2 {
3     echo "hello world";
4 }));

更多路由请看手册: http://www.golaravel.com/docs/4.1/routing/

二、模型 
普通数据库操作

1 $results = DB::select('select * from users where id = ?'array(1));//查
2 $results = DB::insert('insert into users (id, name) values (?, ?)'array(1, 'Dayle'));//增
3 $results = DB::update('update users set votes = 100 where name = ?'array('John'));//更新
4 $results = DB::delete('delete from users where id = ?',array(1));//删

查询生成器

01 //查
02 $obj = DB::table('archives')->select('archives.*','arctype.typename')->where('archives.id','>',2)->join('arctype','arctype.id','=','archives.typeid','left')->orderBy('archives.id','desc')->skip(10)->take(5)->get();//查多条数据
03 $obj = DB::table('archives')->where('typeid','=','1')->orderBy('id','desc')->first();//查询一条数据
04 //where条件分组
05 $sql = DB::table('archives')
06     ->where('typeid''=', 1)
07     ->orWhere(function($query)
08     {
09         $query->where('id''>', 2)
10                 ->where('title''<>''Admin');
11     })
12     ->get();//sql语句: select * from `la_archives` where `typeid` = 1 or (`id` > 2 and `title` <> 'Admin')
13 //聚合查询
14 $users = DB::table('archives')->count();//查总数
15 $price = DB::table('archives')->max('id');//查最大值
16 $price = DB::table('archives')->min('id');//查最小值
17 $price = DB::table('archives')->avg('id');//查平均值
18 $total = DB::table('archives')->sum('id');//查和
19 //增
20 $data array('title'=>'标题八','body'=>'内容八','typeid'=>2);
21 $obj = DB::table('archives')->insert($data);
22 //改
23 $data2 array('title'=>'标题九','body'=>'内容九','typeid'=>2);
24 $obj = DB::table('archives')->where('id',2)->update($data2);
25 //删
26 $obj = DB::table('archives')->where('id','>','100')->delete();

//模型(app/models/Archives.php)

1 class Archives extends Eloquent{   
2     protected $table 'archives';//表名
3     public $timestamps  = false;//不自动维护更新时间
4 }

//模型操作和普通SQL查询一样

1 $arr = Archives::select('archives.*','arctype.typename')->where('archives.id','>',2)->join('arctype','arctype.id','=','archives.typeid','left')->orderBy('archives.id','desc')->skip(0)->take(10)->get();
2 $data array('title'=>'新标题','body'=>'新内容');
3 $arr = Archives::where('id','=',2)->update($data);

三、视图(app/views/home/test.blade.php)

1 <?php
2     foreach($items as $k=>$v){
3         echo $v->title.'<br>';
4     }
5 ?>

控制器中

1 public function test(){
2    $data = Archives::select('*')->get();
3    return View::make('home.test')->with('items',$data);
4 }

【转载】laravel的MVC的更多相关文章

  1. 转载ASP.NET MVC 和ASP.NET Web Form简单区别

    转载原地址 http://www.cnblogs.com/lei2007/p/3315431.html 概论: Asp.net  微软 提供web开发框架或者技术.分Web Form和ASP.NET  ...

  2. 转载 ASP.NET MVC中使用ASP.NET Identity

    转载原地址: http://blog.jobbole.com/90695/ 在之前的文章中,我为大家介绍了OWIN和Katana,有了对它们的基本了解后,才能更好的去学习ASP.NET Identit ...

  3. 转载ASP.NET MVC中Session的处理机制

    本文章转载自 http://www.cnblogs.com/darrenji/p/3951065.html ASP.NET MVC中的Session以及处理方式   最近在ASP.NET MVC项目中 ...

  4. 【转载】【MVC 学习 Razor语法】

    Razor是MVC3中才有的新的视图引擎.我们知道,在ASP.NET中,ASPX的视图引擎依靠<%和%>来调用C#指令.而MVC3以后有了一套新的使用@标记的Razor语法,使用起来更灵活 ...

  5. [转载] ASP.NET MVC (一)——深入理解ASP.NET MVC

    个人认为写得比较透彻得Asp.net mvc 文章,所以转载过来,原文链接在最后: ASP.NET vs MVC vs WebForms 许多ASP.NET开发人员开始接触MVC认为MVC与ASP.N ...

  6. 转载——Asp.Net MVC+EF+三层架构的完整搭建过程

    转载http://www.cnblogs.com/zzqvq/p/5816091.html Asp.Net MVC+EF+三层架构的完整搭建过程 架构图: 使用的数据库: 一张公司的员工信息表,测试数 ...

  7. 《转载》Spring MVC之@RequestBody, @ResponseBody 详解

    引言: 接上一篇文章讲述处理@RequestMapping的方法参数绑定之后,详细介绍下@RequestBody.@ResponseBody的具体用法和使用时机: 简介: @RequestBody 作 ...

  8. 【转载】Spring MVC 整合 Freemarker

    前言 1.为什么要使用Spring MVC呢? 2.为什么要使用Freemarker呢? 3.为什么不使用Struts2呢? 此示例出现的原因就是发现了struts2的性能太差,所以学习Spring ...

  9. [转载]Spring Web MVC Framework

    Required Configuration You need to map requests that you want the DispatcherServlet to handle, by us ...

随机推荐

  1. [Redux] Extracting Presentational Components -- Footer, FilterLink

    Code to be refactored: let nextTodoId = 0; class TodoApp extends Component { render() { const { todo ...

  2. String源码学习

    String源码学习 零散的收获 数组的元素类型可以通过getComponentType来获取到 子类型的数组可以赋值给父类型的数组,.但是并不存在继承关系.数组的父类是Object. 通过声明如下代 ...

  3. Python进阶之路---1.2python版本差异

    Python2.*与python3.*版本差异 作为一个初学者,我们应该如何选择python的版本进行学习呢,这两个版本有什么区别呢,接下来让我们简单了解一下,以便我们后续的学习. Python版本差 ...

  4. Android-隐式Intent

    隐式Intent表示不具体明确要打开的activity,利用隐式intent我们可以打开其他应用. 一个隐式intent的主要组成部分: 1.action 要执行的操作. 通常以intent类的常量表 ...

  5. Android黑科技,读取用户短信+修改系统短信数据库

    安卓系统比起ios系统最大的缺点,相信大家都知道,就是系统安全问题.这篇博客就秀一波“黑科技”. 读取用户短信 Android应用能读取用户手机上的短信,相信已经不是什么新鲜事,比如我们收到的短信验证 ...

  6. Linux 下安装oracle数据库

    原文出处       http://www.linuxidc.com/Linux/2015-02/113222.html 需要安装Oracle DataGuard,所以先要安装单台Oracle11g, ...

  7. 全世界最详细的图形化VMware中linux环境下oracle安装(一)【weber出品必属精品】

    安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装 ...

  8. respondsToSelector的使用

    - (BOOL)respondsToSelector:(SEL)aSelector; 用来判断是否有以某个名字命名的方法 +(BOOL) instancesRespondToSelector: sel ...

  9. DTO学习系列之AutoMapper(二)

    本篇目录: Flattening-复杂到简单 Projection-简单到复杂 Configuration Validation-配置验证 Lists and Array-集合和数组 Nested m ...

  10. nodejs 简单http 文件上传demo

    // 这是一个简单的Node HTTP,能处理当前目录的文件 // 并能实现良种特殊的URL用于测试 // 用http://localhost:8000 或http://127.0.0.1:8000 ...