Laravel框架学习记录一 框架基础

来源:互联网 发布:心脏支架 知乎 编辑:程序博客网 时间:2024/05/01 08:05

一、设置database:

1、主要几个要素:

<?phpreturn array('fetch'=>PDO::FETCH_CLASS,'default'=>'mysql','connections'=>array(),'migrations'=>'migrations','redis'=>array(),);?>
2、开始设置SQL(Mysql)和redis数据库:
mysql:

'connections'=>array('连接名'=>array('driver'=>'数据库类型(mysql)','host'=>'主机IP','database'=>'数据库库名','username'=>'数据库连接账号','password'=>'数据库连接密码','charset'=>'utf8','collation'=>'utf8_unicode_ci','prefix'=>'',),'连接名'=>array(),'连接名'=>array(),.....)

redis:

'redis'=>array('cluster'=>TRUE,'default'=>array('host'=>'主机IP','port'=>端口号,),),


二、创建M(Model)模型:

class 类名 extends Eloquent{protected $connection = '连接名';protected $table = '表名';protected $primaryKey = '主键'; const STATUS_NORMAL = 0;//正常状态  const STATUS_DELETED = -1;//已删除状态 //获取数据的方法static public function getDataById($id){ //根据id获取表中所有数据 }public function getXxxList(){  //根据某些条件,获得某些字段数据$sql="select 想要获取的字段 from 表 where 条件 order by 字段$lbs = DB::connection($this->connection)->select($sql);return $lbs;}....//根据控制器所需添加函数public function storeToCache(){ //更新到缓存中$key = '类名':$this->id;Cache::forever($key,$this);}}
根据id获取表中所有数据,此方法基本上通用,所以定义成静态方法:

static public function getDataById($id)    {        $ret = null;        if(isset($id))        {            $key = '类名:' . $id;  //获取表的主键值            if(Cache::has($key))   //判断缓存中是否存在            {                $ret = Cache::get($key);  //如存在,从缓存中取值            }            else{                $ret = Adversity::find($id);  //如不存在,从数据库中出这一行所有字段的值                if (isset($ret))                {//找到后缓存下来,当前是直接操作数据库的                        Cache::forever($key,$ret);   //存到缓存中                }            }        }        return $ret;   //返回数据    } 


三、创建C(controller)控制器

控制器在app下的Controller文件夹下:

class XXController extends BaseController{  //逻辑处理. XX自己取名public function xxxAction(){  //xxx自己取名$list = 对应model的类名::whereRaw($where)->orderBy('','desc')->paginate($page_rows);$list = appends(Input::all())->links();$data = array('list'=>$list);return $this->view('模板引擎名',$data);}}


四、添加V (view)视图

Laravel的视图一般写在模板引擎中,在app下的view文件夹下:

此处主要写视图界面UI,接收控制器传过来的数据,将数据处理并显示,或者将界面的数据更新到数据库中


五、创建路由

在路由中可以通过URL指向不同的控制器类,完成逻辑处理





0 0