Laravel 服务容器
在 Laravel 生命周期中,我们了解到框架运行过程中,会通过创建应用实例来完成很多事情,这个应用实例,也就是我们今天的主角,服务容器。 Laravel 的服务容器,是用于管理类的依赖和执行依赖注入的工具。 依赖注入 DI开始之前,需要我们先了解一下,什么是依赖注入。 简单来说,就是将类的依赖通过参数或其他方式注入。 比如: 12345678910111213141516171819202122232425262728293031323334interface Storage{ public function set($key, $value); public function get($key);}class SessionStorage implements Storage{ function __construct($cookieName='PHPSESSID'){ session_name($cookieName); session_start(); }...
Laravel 生命周期
Laravel 的生命周期主要分为四个阶段: 加载依赖 创建应用实例 接收请求并响应 请求结束进行回调 这四个阶段都在 index.php 中完成: 1234567891011121314151617181920<?php// 加载依赖require __DIR__.'/../vendor/autoload.php';// 创建应用实例$app = require_once __DIR__.'/../bootstrap/app.php';// 实例化 HTTP 内核$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);// 接收请求,生成响应$response = $kernel->handle( $request = Illuminate\Http\Request::capture());// 发送响应$response->send();// 请求结束,进行回调$kernel->terminate($request, $re...
使用 laravel mix 编译资源
学习下如何在 laravel 框架中,用 laravel mix 编译前端资源。 使用本次操作的环境依然是 laradock,如果没用特殊说明,以后应该默认 laradock。 workspace 容器中,已经提前装好了 node 环境,而在项目根目录中,package.json 和 webpack.mix.js 也已经为我们预设好了,所以laravel 项目建好后,直接在根目录安装即可: 1npm install 在 webpack.mix.js 中,已经加载了两个默认的文件: 12mix.js('resources/js/app.js', 'public/js') .sass('resources/sass/app.scss', 'public/css'); 我们只需要把自己的资源文件,按照同样的格式写入进去,然后开始运行,就可以生成编译后的资源了。 虽然示例中只写了 sass 一种样式文件,但是其实可以支持常见的以及不常见的很多中格式,只需要调用对应的接口即可。而且还可以把多个资源...
laravel 内置 vue 的使用
从 5.3 版本开始,用 Vue.js 作为默认 JavaScript 前端框架。 从刚接触 laravel 到现在已经又过去了四个版本,种种原因,还是一直没能用上 vue.js 来做开发,现在刚好因为公司项目用到了 vue,对 vue 有了一定的了解,所以顺便就研究下 vue 在 laravel 中的使用吧。 安装laravel操作均在 laradock 的环境中进行。进入 workspace 容器,执行以下命令安装 laravel 1composer create-project laravel/laravel study 配置mysqldocker-compose up -d nginx mysql phpmyadmin 启动容器配置 nginx、hosts 并重启 nginx进入 mysql 容器执行以下命令: 123456mysql -uroot -prootALTER USER root IDENTIFIED WITH mysql_native_password BY 'PASSWORD';exit;exit 访问 phpmyadmin: ...
travis-ci 可持续集成测试
给博客添加了 travis ci 可持续集成,以后本地可以不装 node 环境了。 操作过程:github 账号 登陆 travis ci登陆后把博客项目的开关打开。 博客项目创建分支把博客项目,即 .io 的那个项目拉到本地,创建一个新的分支 hexo: 123456git checkout -b hexogit rm -rf * #删除仓库中的文件,可能本地的文件还存有,则需要使用 rm -rf 命令git commit -m "清空文件夹" #提交删除信息git push origin hexo:hexo #将删除的信息推送到远程仓库 把博客源码放入 hexo 分支的文件夹中,然后再新建 .travis.yml: 123456789101112131415161718192021222324252627282930313233343536373839404142434445# 指定语言环境language: node_js# 指定需要sudo权限sudo: required# 指定node_js版本node_js: - 7.9.0# 指定...
phpstorm 配置 laradock xdebug
本次操作为 win10 系统,理论上和其他系统无差异。 克隆 laradock 到本地:git clone https://github.com/Laradock/laradock.git 进入 laradock 文件夹, 生成配置文件:cp .\env-example .env 编辑 .env 配置文件: 1234WORKSPACE_INSTALL_XDEBUG=truePHP_FPM_INSTALL_XDEBUG=true 修改 laradock/php-fpm/xdebug.ini 和 laradock/workspace/xdebug.ini配置文件: 1234567891011121314151617xdebug.remote_host=dockerhostxdebug.remote_connect_back=0xdebug.remote_port=9000xdebug.idekey=PHPSTORMxdebug.remote_autostart=1xdebug.remote_enable=1xdebug.cli_color=0xdebug.profiler_e...
新年快乐
久不更博,是因为最近在学习,然后把笔记都写在了简书。 博客不会关,域名已续费。 会忙里抽闲继续折腾。 只可惜想学想做的东西都太多,有点分身无暇。 不说了,19 年也都进来这么久了,祝大家新年快乐吧。
常用工具合计
图片处理类工具 Ai转常用图片格式 图片转favicon 图片转favicon2 艺术字生成 开发工具 代码转换 ascii文字生成 leangoo-团队协作工具 我喜欢的几个博客 litten Makito’s Notebook 澳洲小哥原始技术 MARKSZのBlog 魚·后花园
im-a-test
I am a test… test for git push, because I losted an article… 好吧,能推送,就是丢了周末的一个文件,虽然它明明就躺在文件夹里 既然能推送,那我就再得瑟一下。 大舅二舅都是他舅,大哈二哈都是条狗~ 噢噢 都是狗~~
Happy Birthday
昨天我爹生日,我竟然可耻的忘了…… 晚上看到我姑姑们在群里发红包祝福,吓得我赶紧打电话表示慰问。 结果接通电话我妈也忘了。 心疼我爹。 Happy Birthday!
