上一篇我们有提到『自动加载』这个概念,并创建了 autoload.php
文件定义了我们项目里的自动加载方式。如果大家有花时间去官网了解 spl_autload_register
函数,就应该知道我们可以定义不只一个自动加载的规则。关于 PHP 自动加载功能的『进化』,大家可以看这篇文章(居然也是我在八年前写的了……),不但详细介绍了自动加载的发展,而且还提到了 PHP 里很重要的规范 PSR。
在 PHP 5 年代,为了加快 PHP 的执行效率,生产机都会安装 APC 或者 Zend OpCache 之类的扩展,它们的用途都是将某个 PHP 脚本第一次运行之后的 Opcode(编译之后的中间代码)缓存在内存,这个脚本在第二次运行的时候就可以跳过编译过程。
曾经见过太多乱写版本号的(其实现在比以前好很多了),好多 1.9.0 的下个版本必然是 2.0.0, 2.9.0 下个版本必须 3.0.0……主要还是因为之前对版本号的命名就没有规范,大家都是看心情写。后来 semantic versioning 得到推广,版本号取名的情况得到改善,但依然有很多人不知道三段式版本号是什么含义(各种培训学校你们教一下这些规范会死么……)。
因为一些众所周知的原因,在使用 Composer 管理 PHP 组件时,速度差(rang)强(ren)人(beng)意(kui)。这里我们提供了一个中国镜像站:packagist.cn
使用方式:之用在 composer.json 添加如下代码即可
{
...
"repositories": [
{"type": "composer", "url": "http://packagist.cn"},
{"packagist": false}
]
}
是不是速度立马嗖嗖的呢?
*** 2017-01-12 补充:目前此镜像已经不能使用,大家请自行寻找其他的镜像。如果你跟我一样觉得国内目前的镜像都不稳定,可以尝试使用代理的方式。
Composer 对 PHP 世界的影响是巨大的,使用 Composer 来代替 PEAR 一定是大势所趋。当小伙伴们都还沉浸在 Composer带来的便利的时候,有没有想过如何更好的使用 Composer 呢,网上大部分教的直接下载 Composer 然后在当前目录直接运行的方法是不是略感屌丝呢。没错,这么好用的工具怎么着也得放在 /usr/bin
里边吧,但我更倾向于另外一种方式。
首先还是常规的下载 composer.phar 到随便什么目录。比如就 home
吧
$ curl -sS https://getcomposer.org/installer | php
英文原文地址:https://symfony.com/doc/current/create_framework/http_foundation.html
在开始重构我们的代码之前,我打算先再谈谈为什么您最好使用一个框架来替代用 PHP 直接书写这种方式来创建一个应用程序。即使写一个很小的代码片段,使用框架也是一个好主意,而使用 sf 组件库来创建一个框架比直接写一个框架更好。