1. Composer
Composer 是 PHP5.3以上 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。Composer 不是一个包管理器。是的,它涉及 “packages” 和 “libraries”,但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。
本篇,我们就在自己的项目中使用composer来进行依赖管理。
2. 安装Composer
1、访问Composer下载地址,下载安装对应平台的composer,安装方法参照官方文档。
2、打开命令行,输入composer -V
,测试是否安装成功。
3. 使用Composer
3.1. 初次使用
1、在项目根目录下新建composer.json,内容如下:
1 | { |
需要解释的,是require字段,要求PHP大于等于5.3,smarty大于等于3.1且小于等于4.0。
版本号选择参照下表:
2、安装依赖
在根目录打开命令行,输入composer
,如果composer.json文件有错误会出现提示,没有错误则提示可选参数和功能。
输入composer install
,即可安装依赖到vendor目录中,并且自动生成composer.lock和vendor/autoload.php。
3.2. 更新依赖
1、在composer.json中添加依赖,whoops任意版本,var-dumper任意版本。
1 | "filp/whoops": "*", |
2、安装依赖composer install
,提示
1 | Loading composer repositories with package information |
从提示可以看出,composer install
读取的是composer.lock中的依赖,而不是最新的composer.json。
所以,我们要使用命令composer update
,这样就可以下载新写入的依赖,并且更新composer.lock。
3.3. 更换Composer源
如果在composer install
或composer update
时非常慢,那么我们可以更换Composer源。
访问Composer中国镜像站,参照文档,在composer.json所在目录中执行:composer config repo.packagist composer https://packagist.phpcomposer.com
或者,直接在composer.json中添加:
1 | "repositories": { |
4. 使用依赖
4.1. smarty
1、当前,lib目录和vendor目录中都包含了smarty,使用verdor中的smarty会更有格调,遂弃用lib目录,改用vendor作为第三方库目录。
2、根目录下index.php修改为:
1 | // define('LIB',VKPHP.'/lib'); //第三方库所在目录 |
3、core目录下render.php修改为:
1 | // require_once(LIB.'/smarty/libs/Smarty.class.php'); |
因为index.php中自动加载了所有第三方库,所以我们不再需要自己引入。
访问 http://vkphp.dev/index/render2 ,smarty正常工作。
4.2. whoops
根目录index.php修改为:
1 | if(DEBUG){ |
访问 http://vkphp.dev/index/render3 ,即可看到炫酷的报错页面,没错,whoops就是一个错误显示插件。
4.3. var-dumper
修改app/ctrl/indexCtrl.php中的data函数为:
1 | public function data(){ |
访问 http://vkphp.dev/index/data ,即可看到炫酷的变量输出页面,没错,var-dumper是一个变量显示插件。
5. 源码分享
https://github.com/voidking/vkphp/releases/tag/v1.4.0