一、laravel路由(应用中的大多数路由都会定义在 app/routes.php 文件中)
routes.php
Route::get('/test','TestController@index');一个路由就定义好了,当访问 http://xxx.com/public/index.php/test 时就会去找 app/controllers/TestController.php的index方法 TestController.php
class TestController extends Controller{ public function index(){ echo "hello world"; }}一个控制器就建立好了,控制器也可以设置闭包,也可以设置别名
Route::get('user/profile', array('as' => 'profile', function(){ echo "hello world";}));更多路由请看手册:
二、模型
普通数据库操作$results = DB::select('select * from users where id = ?', array(1));//查$results = DB::insert('insert into users (id, name) values (?, ?)', array(1, 'Dayle'));//增$results = DB::update('update users set votes = 100 where name = ?', array('John'));//更新$results = DB::delete('delete from users where id = ?',array(1));//删
查询生成器
//查$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();//查多条数据$obj = DB::table('archives')->where('typeid','=','1')->orderBy('id','desc')->first();//查询一条数据//where条件分组$sql = DB::table('archives') ->where('typeid', '=', 1) ->orWhere(function($query) { $query->where('id', '>', 2) ->where('title', '<>', 'Admin'); }) ->get();//sql语句: select * from `la_archives` where `typeid` = 1 or (`id` > 2 and `title` <> 'Admin')//聚合查询$users = DB::table('archives')->count();//查总数$price = DB::table('archives')->max('id');//查最大值$price = DB::table('archives')->min('id');//查最小值$price = DB::table('archives')->avg('id');//查平均值$total = DB::table('archives')->sum('id');//查和//增$data = array('title'=>'标题八','body'=>'内容八','typeid'=>2);$obj = DB::table('archives')->insert($data);//改$data2 = array('title'=>'标题九','body'=>'内容九','typeid'=>2);$obj = DB::table('archives')->where('id',2)->update($data2);//删$obj = DB::table('archives')->where('id','>','100')->delete();
//模型(app/models/Archives.php)
class Archives extends Eloquent{ protected $table = 'archives';//表名 public $timestamps = false;//不自动维护更新时间}//模型操作和普通SQL查询一样
$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();$data = array('title'=>'新标题','body'=>'新内容');$arr = Archives::where('id','=',2)->update($data);
三、视图(app/views/home/test.blade.php)
$v){ echo $v->title.''; }?>
控制器中
public function test(){ $data = Archives::select('*')->get(); return View::make('home.test')->with('items',$data);}