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

