各操作系统下 php 扩展的安装的基本套路 :
Windows
在 Windows 环境下你可以直接下载跟你的 PHP 版本对应的编译好的扩展文件,一般是 dll 后缀, 然后放入php 安装目录下的 ext目录, 然后在 php.ini 文件中配置好路径即可
Linux
在 L...
shanhuhai
7年前 (2017-10-15) 6892℃
2喜欢
在安装php-kafka 扩展后,就可以开始编写 php 消费消息的脚本了,php-rdkafka 扩展提供了几种消息处理的方式
低级方式(Low level)
这种方式没有消费组的概念
<?php
$rk = new RdKafka\Consumer();
$rk-&g...
shanhuhai
7年前 (2017-09-18) 36975℃
21喜欢
Laravel api token验证使用方法
从 Laravel 5.2 开始, Laravel 的将路由的配置进行了分拆, 在 routes 目录下有 web.php 和 api.php 两个路由的配置。 api.php 中用来放你的api 开放接口, 用作一种无状态的认证...
shanhuhai
7年前 (2017-09-18) 32952℃
35喜欢
经常使用接口(Interface)的好处是,别人只要看你的接口就知道你的类实现了哪些功能提供了哪些方法。PHP 提供了一些内置的接口,用来解决一些典型的问题
今天介绍两个接口,Countable 和 Iterator 。
Countable (计数器接口)
Countable 接...
shanhuhai
7年前 (2017-09-16) 5794℃
4喜欢
使用组合而不是继承
“Gang of Four”在设计模式里所声明的,你应该优先选择“组合模式”而不是“继承”
译者注:Gang of Four 译成 四人帮,指代 DesignPatternBook 的四位作者
不论是使用“组合模式”还是使用“继承”都有许多理由。
这个...
shanhuhai
7年前 (2017-09-15) 3578℃
5喜欢
PHP 安装kafka 扩展首先要安装 kafka的基础库 librdkafka
以下安装步骤在 Centos 6.x , php7+版本进行:
$ cd ~/download
$ wget -c https://github.com/edenhill/librdkafka/ar...
shanhuhai
7年前 (2017-09-14) 11543℃
2喜欢
(译者注:以下两点主要是说不要直接操作对象的属性,而是通过方法来间接操作,这样可以封装类的内部细节,避免对象内部属性被意外修改)
1.使用 setter 和 getter
在 PHP 中,你可以为方法设置 public, protected 和 private 关键字。使用这些关...
shanhuhai
7年前 (2017-09-12) 3627℃
8喜欢
接上一篇PHP 代码简洁之道——函数部分(一)
8. 不要使用单例模式
(译者注:这一条有些难理解,看不懂就略过吧)
单例模式是一种反模式,Brian Button 的解释:
单例通常被用做一个全局的实例,为什么不好?因为你在代码中隐藏了依赖,而不是通过接口暴露他们。通过将一些...
shanhuhai
7年前 (2017-09-12) 5286℃
7喜欢
1. 函数参数(不要超过两个)
限制函数的参数数量是非常重要的,因为它使你的函数更容易测试。超过三个参数会导致参数之间的组合过多,你必须对每个单独的参数测试大量不同的情况。
没有参数最理想的情况,一个或两个参数是可以接受的,三个以上是应该避免的。这是很重要的。通常,如果你有两个以...
shanhuhai
7年前 (2017-09-10) 4822℃
3喜欢
使用有意义的并且可以读出来的变量名称
不好的:
$ymdstr = $moment->format('y-m-d');
好的:
$currentDate = $moment->format('y-m-d');
对于同一类型的变量使用相同的词汇
不好的:
getUs...
shanhuhai
7年前 (2017-09-09) 7126℃
19喜欢