很多人都说用 Laravel 做开发很好但是性能太差,我曾经也一度这么认为,最近围绕 composer 做一些行项目 ,研究了 composer 的自动加载机制,顺便研究了下 Laravel 项目,发现,事实上 Laravel 并不慢,只不过还是我们没有用好它罢了。
PHP 项目...
shanhuhai
2年前 (2018-03-18) 7877℃
8喜欢
composer 提供的 autoload 机制使得我们组织代码和引入新类库非常方便,但是也使项目的性能下降了不少 。
composer autoload 慢的主要原因在于来自对 PSR-0 和 PSR-4 的支持,加载器得到一个类名时需要到文件系统里查找对应的类文件位置,这导致...
shanhuhai
2年前 (2018-03-16) 8396℃
4喜欢
接下来我们用 php 连接 rabbitmq 玩一玩。
还没有安装 rabbitmq ,请参考 Rabbitmq 安装
还没有安装 PHP 的 AMQP 扩展,参考 PHP AMQP 扩展安装
一些概念
Rabbitmq 是一个功能很强大消息队列系统,使用起来可能不像某些 pus...
shanhuhai
2年前 (2017-11-23) 8406℃
11喜欢
如果还没有安装 Rabbitmq, 参考这里 Rabbitmq 安装教程
AMQP 扩展安装
PHP 使用 AMQP 协议来连接 Rabbitmq, AMQP 协议即 “Advanced Message Queuing Protocol ”,高级消息队列协议。
使 PHP 支持 ...
shanhuhai
2年前 (2017-11-22) 5797℃
2喜欢
Oauth2.0 是一个开源的授权协议,在全世界得到广泛应用,比较大的社交服务都支持了Oauth2.0 协议,例如 QQ,微博,微信。
Oauth2 协议的使用场景
假设有一个叫“教程集”的网站,可以通过读取用户在微信里的好友关系查询到还有谁也在学习教程,用户想使用该服务,就必须...
shanhuhai
2年前 (2017-11-21) 8924℃
9喜欢
有时候想分析一个开源项目的代码,或者接手了别人的代码,想了解项目代码架构,如果能够在 IDE 中跟踪程序运行轨迹也许可以让你事半功倍。 PhpStorm 提供了强大的调试功能,这篇教程会教大家如何安装配置 xdebug,最终实现能够在浏览器实际运行程序时在断点处直接跳回 PhpS...
shanhuhai
2年前 (2017-10-15) 9193℃
4喜欢
各操作系统下 php 扩展的安装的基本套路 :
Windows
在 Windows 环境下你可以直接下载跟你的 PHP 版本对应的编译好的扩展文件,一般是 dll 后缀, 然后放入php 安装目录下的 ext目录, 然后在 php.ini 文件中配置好路径即可
Linux
在 L...
shanhuhai
2年前 (2017-10-15) 3922℃
1喜欢
在安装php-kafka 扩展后,就可以开始编写 php 消费消息的脚本了,php-rdkafka 扩展提供了几种消息处理的方式
低级方式(Low level)
这种方式没有消费组的概念
<?php
$rk = new RdKafka\Consumer();
$rk-&g...
shanhuhai
2年前 (2017-09-18) 21215℃
16喜欢
Laravel api token验证使用方法
从 Laravel 5.2 开始, Laravel 的将路由的配置进行了分拆, 在 routes 目录下有 web.php 和 api.php 两个路由的配置。 api.php 中用来放你的api 开放接口, 用作一种无状态的认证...
shanhuhai
2年前 (2017-09-18) 26048℃
33喜欢
经常使用接口(Interface)的好处是,别人只要看你的接口就知道你的类实现了哪些功能提供了哪些方法。PHP 提供了一些内置的接口,用来解决一些典型的问题
今天介绍两个接口,Countable 和 Iterator 。
Countable (计数器接口)
Countable 接...
shanhuhai
2年前 (2017-09-16) 2404℃
3喜欢