Based on Laravel transformation and expansion, more convenient for practical business use
English | 中文
plus
LaravelPlus 基于 Laravel 增加部分软件包初始安装和进行业务使用功能改动,来创建一个开箱即用的应用.
配置 composer aliyun 镜像
$ composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
$ git clone https://github.com/ElapseAnnals/laravel-plus.git
// A.在当前目录运行自动复制脚本 ( 推荐)
// YourProject 需要创建的项目名
$ php LaravelPlus/create YourProject
$ cd YourProject // 进入 YourProject 项目中
$ composer update
$ php artisan make:framework init --init
php artisan serve
Tips:
php LaravelPlus/update YourProject
framework 脚本创建内容:
模型生成
php artisan code:models --table=table_name // 指定表
php artisan code:models --connection=mysql // 指定数据库连接
php artisan code:models --connection=mysql --table=table_name // 指定连接和指定表
使用 framework 功能创建 CURL(Tmpls 是对应模型复数名称)
$ php artisan make:framework Tmpls // 创建分层结构(推荐)
$ php artisan make:framework Tmpls --D // 删除分层结构
$ php artisan make:framework Tmpls --F // 强制生成分层结构
效果图:
Tips:
在 .env 中设置 ENABLE_HOT_SWITCHING=true 后,会在 AppServiceProvider 进行 dynamic 映射
使用方式:
<?php
$env = config('dynamic.env');
dynamic 目录文件说明
Tips:
优化默认路由中闭包
$ sudo vim /etc/php/7.2/fpm/php.ini
// set opcache.enable=1
// ...
$ sudo service php5.6-fpm restart
$ sudo service nginx restart
npm run dev // 本地开发,开启 debug 模式
npm run prod // 线上部署(进行压缩资源)
npm run watch // 监视编译(开发时启用)
使用 mixin 注入 vue 组件
<script>
var js_data = @json($js_data);
var mixinSlot = {
data: {},
methods: {}
}
</script>
<script type="text/javascript" src="{{asset('js/app.js')}}"></script>
web 经过权限,csrf 等中间件和 Session api token 维护使用 auth:api 中间件或 barryvdh/laravel-cors 若非单纯 api ,建议使用 web
production 生产环境
develop 开发环境
php artisan ide-helper:generate
-推荐扩展
php-ext-xlswriter excel 处理扩展,性能强劲(30万行 4 s)
推荐软件包列表
overtrue/laravel-lang 多语言本地化 i18n
[laravel/socialite] () 社会化登陆包【注意配置代理或更改底层路由请求】 - 替代方案 overtrue/socialite 包含国内社会化登陆
rap2hpoutre/laravel-log-viewer 日志展示 [访问 host/logs]
react/react ReactPHP 多进程异步扩展(手动,引入后 Process 才可使用) - react/child-process - react/event-loop - 引入 ElasticSearch For scout - laravel/scout (手动)
elastic/elasticsearch-php 原生 ElasticSearch (手动)
predis/predis Redis 插件(建议使用 php-redis 扩展)
php-tool/laravel-plus-make Laravel Plus Make 自动生成 framework 代码插件软件包( 手动)
darkaonline/l5-swagger swagger 文档生成
mpociot/laravel-apidoc-generator api doc 文档生成
nunomaduro/larastan 增加 laravel 静态检测工具
guzzlehttp/guzzle Http 请求包
ClassPreloader/ClassPreloader vendor preload 生成器
-beyondcode/laravel-self-diagnosis laravel project diagnosisl
-beyondcode/laravel-dump-server that collects all your dump
call outputs -tightenco/jigsaw 主动静态化 -spatie/laravel-responsecache 静态化 -silber/page-cache 静态化
-barryvdh/laravel-httpcache 静态化
增加前端资源
增加默认图片存储目录(storage/app/public/images)
扩展结构分层 想法来源
设置默认 Schema index 长度
使用 Schema 注意 MySQL 版本低于 5.7.7 需设置默认 index 长度小于 191
Schema::defaultStringLength(191);