php-laravel框架学习重点笔记1_第1页
php-laravel框架学习重点笔记1_第2页
php-laravel框架学习重点笔记1_第3页
php-laravel框架学习重点笔记1_第4页
php-laravel框架学习重点笔记1_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

laravel框架①-laravel简介laravel是当前一种比较主流框架,当前诸多互联网公司基本都在使用该框架。该框架是基于symfony【国外一款非常流行框架:由于国内手册不是很齐全,没有多少公司使用】一种国外MVC框架。laravel定位就是做一种简洁使用程序员框架。为web艺术而开发。注意:由于这些资源信息是在国外,人们在使用某些VPN工具时候,也许会让自己虚拟主机无法访问,则自己使用过程中,先退出一下VPN,然后在设立虚拟主机。当前大某些框架公有特点:单入口:所有祈求必要从单入口开始:重要是关于管理【统一参数过滤】。MVC思想【分层思想:重要是为了协同开发---实现后期维护以便框架自身写好了诸多基本性代码,不再需要重复造轮子】ORM操作数据库【ObejectRelationshipModel:翻译过来,一种模型对象相应数据表里面一张表,对象属性就是表字段名,对象下办法就是对表中记录curd操作】例如:$userModel[username]========sh_user[username]扩展:弄混:CRM【ClientRelationshipMap】客户关系管理系统,普通来说是使用Java开发一种软件用来维护公司和公司,公司和顾客之间关系一种软件【保存顾客资料信息和关系软件】,有时候还可以听到Java开发ERP系统(公司资源管理系统),使用Java语法开发一种公司内部资源信息管理软件。尚有时候听到Java开发OA项目【无纸化办公、低碳】【清晰php是不适合做OA项目】。桌面:Delphi语言(宝兰公司语言,当前已经被收购,曾经和诺基亚),C++,VB(微软)注意:laravel框架有一种很特别地方,所有url访问都必要要事先定义好一种路由规则。对比之前TP|CI框架index.php---Router(Dispatcher)路由器类文献是隐式操作,意思就是说和程序员无关【程序员不用去获取控制器或者调用控制器办法】,框架自己会去匹配url里面控制器和办法,框架自己完毕类实例化和办法调用。因此laravel是一种重路由框架。记住:1.重路由2.依赖注入【设计模式用多】3.纯面向对象框架【和YII框架也是】比喻:TP里面从数据库获取数据是一种关联数组,但是laravel获取数据必定是一种对象。②-开发环境规定注意:laravel框架有运营对环境是有严格规定。注意:在修改php.ini配备文献系统时候,先使用phpinfo函数进行查看究竟使用是哪个php.ini配备文献(Linux开发)建议wamp2.5开发环境就可以。php版本信息扩展信息注意:使用pathinfo函数检查时候,必要要有如下信息注意:同步还要启动Apacherewrite模块后需要重启Apache注意:需要把php.exe加入系统开发环境变量里面查找php.exe途径位置将上面php.exe途径加入到系统环境里面如果在命令行里面可以看到这些信息:则代表配备成功。【必要先把php.exe途径信息加入到环境变量】③-laravel安装方式简介需要注意是,该框架安装分为两种方式:使用专业软件composer软件(php类库管理器(上传类、验证码类....),可以帮咱们自动去互联网下载开发过程中所需要类库文献和Linux下包管理器yum比较类似,和node.js里面npm,也和前端里面bower相似)理解:360软件QQ软件管理【要什么软件喊一下】简介:该工具需要借助一定工具才可以使用(VPN工具),这次课程也不使用这种方式。有时间还是要自己去研究一下。使用手工安装,需要自己去下载laravel框架源码。【thinkphp---onethink框架----基于onethink这个框架开发了一种微信公众号管理开源产品weiphp[小猪cms](ECShop、discuz!)】网站:本次开发使用5.1.11版本:该版本是官方推出长期支持一种版本,提供3年维护期。开源:1.bug修复2.版本兼容性。注意:当前lavarel版本最新应当是5.3。但是公司使用更多还是5.1【官方长期支持】。微信公众账号管理平台://【诸多公司使用这个】④-laravel详细安装虚拟主键创立(注意:public问题),由于laravel框架入口文献index.php时候在public目录,因此在配备虚拟主机目录时候,需要配备到public下。虚拟主机配备:<VirtualHost*:80>DocumentRoot"D:\vhost\\public"ServerName<Directory"D:\vhost\\public">OptionsIndexesFollowSymLinksAllowOverrideAllOrderallow,denyAllowfromall</Directory></VirtualHost>修改hosts文献重启见到这个代表运营成功

⑤-laravel目录构造分析该框架目录构造和原先使用某些开源框架TP构造还是有很大区别。app目录:重要是存储自己开发应用代码(里面重要书写控制器和模型和路由文献)bootstrap目录:laravel启动目录config目录:重要是存储配备文献信息database目录:数据迁移功能public目录:单入口和系统静态资源(css、img、js、uploads)resources目录:存储视图文献storage目录:重要是存储缓存文献和日记文献,需要注意:如果是在Linux环境下,该目录需要有可写权限vendor目录:重要是存储第三方类库文献,laravel思想重要是共同开发,不要重复造轮子(例如:里面也许存在验证码类、上传类、邮件类),还需要注意该目录还存储laravel框架源码。注意:如果使用composer软件管理,composer下载类库都是存储在该目录下。【问题:版权问题....】学习成本高:实用【不划算、会用就好】【TP、CI源码必要要看】.env文献:重要是设立某些系统有关环境配备文献信息。config目录里面文献配备内容普通都是读取该文献里面配备信息(config里面配备项值基本都是来自.env文献)。

二、laravel入门使用要想laravel玩好,路由必要掌握。①-路由简介简朴说就是将顾客祈求转发给相应php程序去解决路由作用就是建立url祈求和php程序【控制器下办法或者视图、甚至直接返回一种字符串】之间映射,需要注意laravel框架里面路由是必要【laravel可以不写控制器、也不可以写模型、也可以不写视图】,并且每个路由规则是唯一性。laravel是一种重路由框架。祈求类型get、put、post、patch、delete、tarce...等【http祈求分6种,但是并不是所有祈求web服务器都支持】任何框架TP|CI|laravel都离不开路由,例如TP框架里面形如这样URL地址:;代表祈求是Home模块下,User控制器下add办法【普通其她框架都是路由隐藏了】5.参照手册②-路由入门使用路由文献位置内容路由文献内容分析3.测试视图视图文献浏览器访问

③-视图使用思考:视图写哪里?视图文献如何命名?【a..blade.phpb.php】视图里面内容该如何书写?【a.html代码b.原生php代码c.laravel标签语法(必要是以.blade.php结尾视图)】在控制器-路由文献里面如何调用视图?【view(‘view’)】如何给视图赋值?【a.withb.view传参】如何在视图里面显示控制器赋值变量信息?【a.原生b.{{$title}}插值表达式】视图与否可以分目录管理?实操:视图文献写在哪里视图文献如何命名文献名习惯小写(建议小写)文献名后缀是.blade.php(由于laravel里面有一套模板引擎就是使用blade,可以直接使用标签语法{{$title}},也可以使用原生php语法显示数据。)需要注意是也可以使用.php结尾,但是这样话就不能使用laravel提供标签{{$title}}语法显示数据,只能使用原生语法<?phpecho$title;?>显示数据视图文献里面内容如何书写可以直接写html代码可以直接书写原生php代码可以使用标签语法书写代码【但是后缀必要是.blade.php结尾】代码效果视图文献分文献夹管理【需要注意是分目录后,使用.号代表文献分割符/】④-控制器使用在laravel里面控制器并不是必要。可以把所有代码写在路由文献里面,但是这样写话是不便于管理,因此不建议这样做,还是建议自己书写控制器文献。然后在路由规则里面相应控制器下办法。思考:控制器文献写在哪里?控制器文献如何命名?内容如何书写?【使用大驼峰命名,同步注意命名空间和基类控制器引入】如何在控制器里面载入视图?如何给视图赋值?如何在视图显示数据?如何使用路由规则调用控制器下办法控制器与否可以分管理?【可以】控制器注意命名空间问题:

三、DB类操作数据库【重点-模型】按照MVC架构,对数据操作应当放在Model中完毕,但如果不使用Model,咱们也可以用laravel框架提供DB类操作数据库。并且,对于某些极其复杂sql,用Model已经很难完毕,需要开发者自己手写sql语句,使用用DB类去执行原生sql。laravel中DB类基本用法DB::table('tableName')获取操作tableName表实例。①-数据库创立和配备1.完毕数据表设计和数据库配备2.配备数据库信息3.还要修改config目录下database.php文献②-设计路由规则在路由文献定义路由规则③-创立DbController.php文献切换到项目目录2.使用命令行创立>phpartisanmake:controllerAdmin\DbController当前代表需要在app\Http\Controllers\Admin这个目录创立DbController.php3.创立后④-数据添加插入单行,一维数组形式,数组键就是表中字段,返回值为true和false。代码:$row=['titles'=>'测试数据','email'=>''];DB::table('goods')->insert($row);案例:效果:插入多行,二维数组形式,二维数组中单元键是表中字段,返回值为true和false。$rows=array(array('titles'=>'测试数据1','email'=>''),array('titles'=>'测试数据2','email'=>''));DB::table('goods')->insert($rows);案例:插入后返回主键值,获取主键值用insertGetId()办法(但是需要注意是对多维数组不行)$row=['titles'=>'测试数据','email'=>''];$id=DB::table('goods')->insertGetId($row);var_dump($id);案例:效果:⑤-数据更新在laravel中对数据修改如下:DB::table('tableName')->where('id',1)->update(['age'=>19]);对于上面操作相称于sql:updatetableNamesetage=19whereid=1;案例:如果但愿在某字段在原基本上增长或减少则可以使用increment/decrement办法,返回值是受影响行数。例如:DB::table('users')->where('id',1)->increment('age');//默认步长为1DB::table('users')->where('id',2)->increment('age',3);//第二个参数,指定步长DB::table('users')->where('id',3)->decrement('age');DB::table('users')->where('id',4)->decrement('age',3);⑥-数据删除在laravel中对数据修改如下:DB::table(‘tableName’)->where('id','>',3)->delete();备注:当where办法有三个参数时,其中第二个参数当做运算符,并且返回值是受影响行数。案例:效果:⑦-数据显示注意:在laravel里面取出数据,无论是单行还是多行,每一行数据都是以一种对象形式组织,不是关联数组。a.获取所有数据DB::table('goods')->get();等价操作:select*fromgoods;案例:效果:b.按条件获取数据DB::table('goods'

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论