作者: Jobs Lin

259 篇文章

composer深入理解(3)
如果我们在代码中写下 new phpDocumentor\Reflection\Element(),PHP 会通过 SPL_autoload_register 调用 loadClass -> findFile -> findFileWithExtension。步骤如下: 将 \ 转为文件…
composer深入理解(2)
很多框架在初始化的时候都会引入 composer 来协助自动加载的,以 Laravel 为例,它入口文件 index.php 第一句就是利用 composer 来实现自动加载功能。 启动 <?php define('LARAVEL_START', microtime(tru…
如何在外部改变类的私有属性
使用闭包就可以实现了<?php class Books{ public $count = 1; private $sum = 2; } function getInitializer(Books $books) { return \Closure::bind(function () use (…
解析spl_autoload_register()函数
最近在研究Composer的自动加载时,发现spl_autoload_register()这个函数非常重要,总结下。 spl_autoload_register() 的作用是 注册给定的函数作为 __autoload 的实现 spl_autoload_register()函数是实现自动加载未定义类功…
composer深入理解(1)
以前写过一遍关于composer入门的文章。但是它已经不能满足广大P友们对知识的渴求啦。 咱们就在这里对composer更深入的了解下(๑¯ ³ ¯๑)。 前言 PHP 自5.3的版本之后,已经重焕新生,命名空间、性状(trait)、闭包、接口、PSR 规范、以及 composer 的出现已经让 P…
PSR-1 基础编码规范
PHP 标签 PHP 代码 必须 使用 <?php ?> 长标签 或 <?= ?> 短输出标签;一定不可 使用其它自定义标签。 字符集编码 PHP 代码 必须 且只可使用 不带 BOM 的 UTF-8 编码。 副作用 总结下这个就是文件中定义了类和方法就不要再在业务逻辑了。。…
laravel队列使用指南
最近公司的一部分业务需要解耦,上消息队列。 原本打算使用 RabbitMQ ,不过啃了一段时间,太难了。。。 先使用laravel自带的消息队列来实现吧。 准备 laravel的队列驱动器有好多种,比如 "sync", "database", "be…
PSR 简介
PHP FIG PSR (PHP Standard Recommendations) 是由 PHP FIG 组织制定的 PHP 规范,是 PHP 开发的实践标准。 PHP FIG , FIG ( Framework Interoperability Group ) 框架可互用性小组的缩写。 PSR …
phpredis 和 predis
phpredis 是使用 c 写的 php 扩展,predis 是使用纯 php 写的。 在性能上的区别当然是扩展更好一些,但其实这两个实现还有更大的区别,就是连接的保持。 phpredis 在扩展中使用 c 可以保持 php-fpm 到 redis 的长连接,所以一个 php-fpm 进程上的多个…
关于session与dd()函数
dd()是laravel中非常常用的一个函数,有debug神器的称号。 但是今天与session一起使用碰到到了问题。session内容存不住。 问题复现 public function test002(Request $request){ $request->session()->pu…