laravel(一) 框架对比及目录结构

2020-11-12  本文已影响0人  mafa1993

Laravel

框架对比

  1. tp
    • 入门简单,易于扩展
    • 轻量级
    • 适合中小项目开发
    • 目录结构混乱
    • tp适合中小型商业项目
  2. yii
    • 开发快,运行快,性能优异,模型使用方便
    • 对model层的指导和考虑少,文档实例少,英文多,对php技术要求高
    • view不是纯html,包含php代码
    • 适合大型商业化项目,yii是性能与组件化框架
  3. laravel
    • 支持TDD DDD BDD
    • 集合了各种设计模式,ioc容器,依赖注入
    • 组建式框架,比较臃肿
    • 适合大中型项目,以组件化为主的框架

composer

php包管理工具,进行包的安装和更新

  1. packagist.org,官方仓库
  2. repository代码仓库,支持公开与私有仓库
  3. vender directory 依赖包一般安装在vender目录下
  4. 根据composer.json到packagist查找对应代码仓库位置,然后去repository拉取

composer优势

  1. 可以轻松解决依赖问题
  2. 统一仓库文件的格式
  3. 形成统一的包管理规范

composer简单使用

  1. composer require xxx/xxx require包名
  2. composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 修改源为阿里
  3. composer create-project --prefer-dist laravel/laravel blog
  4. laravel 所需要的php扩展
    • BCMath ;Ctype;Fileinfo;Json;Mbstring;Openssl;PDO;Tokenizer;XML

目录结构

|--- app --- 应用目录 , 控制器,中间件,服务目录
| |-- Console -- 命令行目录 
| |-- Exceptions -- 异常目录 
| |-- Http -- 网络请求目录 
| |-- Providers -- 服务提供目录 
| |...... |--- bootstrap --- 启动目录 
| |-- cache -- 路由和服务缓存目录
| |-- app.php -- 应用启动文件 
|--- config --- 应用配置目录   
| |-- app.php -- 应用配置文件   用的多
| |-- auth.php -- 认证配置文件
| |-- broadcasting.php -- 广播配置文件 
| |-- cache.php -- 缓存配置文件 
| |-- database.php -- 数据库配置文件 
| |...... 
|--- database --- 数据库目录 
| |-- factories -- 模型工厂目录 
| |-- migrations -- 数据迁移目录 
| |-- seeds -- 种子目录 
| |...... 
|--- public --- 公共目录 入口文件目录
| |-- css -- 公共css目录 
| |-- js -- 公共js目录 
| |-- index.php -- 入口文件 
|--- resources --- 资源目录 视图在内
| |-- lang -- 语言包目录 
| |-- sass -- sass目录 
| |-- views -- 模板目录 
|--- routes --- 路由目录 
| |-- api.php -- api路由定义 
| |-- console.php -- 控制台路由定义 
| |-- web.php -- 网页路由定义
|--- storage --- 存储目录 
| |-- app -- 存储应用生成的文件 
| |-- framework -- 存储框架生成的文件和缓存 
| |-- logs -- 存储日志 
|--- tests --- 单元测试目录 
|--- vendor --- 第三方类库目录 
| |-- composer -- composer目录
| |-- laravel -- laravel框架目录 
| |-- symfony -- symfony组件目录 
| |-- autoload.php -- 自动加载入口文件 
| |...... 
|--- .env --- 环境变量配置文件 
|--- artisan --- artisan工具文件 
|--- server.php --- 命令行应用测试文件 
|.........

编写规范

  1. 方法名可以使用 get、post、delete+动作的restful风格
  2. 模板引擎为blade,{{$abc}} 使用 {{-- xxx -}}注释 @if @endif
  3. 模板名 控制器名.blade.php
上一篇下一篇

猜你喜欢

热点阅读