苹果笔记本还值得买吗?
不错,全尺寸蝶式键盘,Retina 226 ppi 高分辨率屏幕令人心生爱慕。加上历史上首次无风扇设计,显得更加精致纤薄。但,唯一一点不好就是,整个电脑就只有一个雷电 3 (TunderBolt 3)接口并担任充电角色和一个耳机孔。这接口太少是硬伤,仔细一想,这个不就是带键盘的 ipad 吗?如果已经拥有 ipad,这个更不需要购买啦。差强人意的 nmbpnmbp 分为 13 英寸和 15 英寸两种,...
OpenResty Lua Redis 加速接口响应
本文以完整的示例,展示使用 Nginx、Lua、Redis 对响应速度慢的接口进行加速响应,提供快速的用户体验。代码经过严格的测试,没有任何问题。缓存的核心思想在于读取缓存后,即时中断连接,返回结果,然后继续执行,更新缓存。可以缓存的接口一般都是与用户无关的接口,比如计算当日热度最高的商品排行等。需要加速的接口代码,如下示例:<?php sleep(2); echo 'sleep 2 seconds,...
PHP数组式访问接口ArrayAccess
ArrayAccess 提供像访问数组一样访问对象的能力的接口。看 Web Artisan Laravel 框架的 Illuminate\Container 就实现了 ArrayAccess 接口,这样就可以像操作数组的方式一样来操作对象。这样的语言预定义接口功能很少人知道,即使不知道也不会影响一个程序员的开发和设计。PHP 的设计者们不直接实现这样的接口就是让程序员有更强的能力创造新的行为的对象。...
PHP fastcgi 方式加快接口响应速度
本文讲解 PHP fastcgi 方式运行时,如何加快接口响应速度。绝大多数接口的返回结果都是可以缓存的,比如百度的搜索风云榜,也许百度内部系统算出来需要半个小时,但是人家可以缓存结果,接口的响应速度可以做到毫秒级,就是这个意思。<?php if (!function_exists("fastcgi_finish_request")) { function fastcgi_finish_request...
谈谈PHP框架Laravel和CodeIgniter
的 PHP 框架,我更愿意选择 CodeIgniter,因为我更喜欢实用和性能高一点的框架。在我看来,Laravel 框架就是装逼,IOC 控制反转和依赖注入这样的东西,理论上是想让代码更灵活,但如果接口和实现的关系瓦解了,还是需要手动的修改 PHP 文件来重新绑定。其实这些东西是为 Java 开发服务的,放到 PHP 这里来反而更加麻烦。Java 应用开发一般发布代码后需要重新启动服务,市面上当然也...
PHP 5.5 新特性关键字 yield
} } ?> yield 关键字语法返回生成器对象。 当一个生成器函数第一次被调用的时候,会返回一个内部 Generator 类的对象。这个对象和一个只能向前的迭代器对象一样实现了 Iterator 接口。大部分 Generator 类中的方法拥有和 Iterator 接口一样的语义,但是生成器对象有一个特殊的方法: send()。 <?php class Generator implements I...
通过 UA 来识别浏览器和操作系统
在客户端完成识别。即使意义不大,还得尝试去做。写这种代码,比较费时间,因为不仅仅是技术,而是需要大量的搜集工作。找了一些开源的软件包,大的吓人,有些竟然依赖网络请求,这样就很慢且不稳定。发现一个网上的接口,一看就是专业的。useragentstring.com,不过这个接口太慢了。分享一下,找起来不容易啊,尤其的微软的 Windows。preg_match('/(firefox|chrome|msie...
使用 openssl 将 pfx 证书转换为 pem
前一阵子,在 curl 中使用 https 请求外部接口,在使用测试证书联调的时候请求第三方接口没有任何问题。正式联调后,使用第三方给的证书却请求不成功,而我们使用的垃圾代码架构也不报错。于是一急之下,使用 LMLPHP 写了个小栗子(例子)测试了下。结果 curl 报错如下:Error 58: could not load PEM client certificate, OpenSSL error ...
WinXP VPN连上后能上谷歌不能上Youtube等怎么办
什么的就不能上了,是不是很奇怪,也有都不能上的情况。 下面转载一些网上的教程,需要修改注册表。 Windows XP 系统连接 PPTP VPN 或 L2TP IPSec VPN 后,会发现 VPN 接口配置的 DNS 的优先级不够而无法对内部主机进行解析(Windows 7 系统不存在此问题)。如果你系统设置的默认 DNS 服务器是国内 DNS 服务器,就会导致虽然已经连上了 VPN 但是无法打开 ...
aliyun cli 操作示例
不得不说,阿里云在 api 方面还是努了一点力的,至少把接口做的好用一点了,更加从用户的角度考虑问题了。$ ./aliyun alidns DescribeDomainRecords --DomainName a.com { "DomainRecords": { "Record": [ { "DomainName": "", "Line": "default", "Locked": false, "R...