Composer是PHP中用来管理依赖关系的工具。你可以在自己的项目中声明所依赖的外部工具库,Composer会帮你安装这些依赖的库文件。随着时间的演化,Composer已经成为一个主流的PHP包管理工具。

如何拉取

1.使用composer拉去库有两种方式,第一种则通过命令行进行拉取
例如,当需要集成monolog的时候,我们只要知道composer默认会将库默认置入当前文件夹下的vendor文件夹中即可
所以,我们可以通过命令行定位到框架根目录中,无论windows还是linux这是通用的,以下命令以windows中为例,假设我们的框架安装在phpstudy的环境目录下,路径为D:\phpstudy\www,我们可以使用管理员身份运行cmd输入:

cd /d D:\phpstudy\www

然后我们就可以通过命令行进行拉取了

composer require monolog/monolog

等待片刻,composer会自动获取monolog相关文件到本地,如果您觉得太慢我们可以在命令行中执行命令,切换到国内线路:

composer config -g repo.packagist composer https://packagist.phpcomposer.com

2.接下来说一下第二种方式,第二种方式和第一种差不多,其中多了一个就是json文件了
在框架根目录中我们会发现一个composer.json文件,我们可以用编辑器打开它,我们可以不用看其他信息,找到require键,里面默认有一个"php": ">=5.4.0",意思是使用的php版本必须大于5.4.0
我们可以用过"库名称":"版本号的方式"来定义自己需要的库列表,具体的版本约束方式,点击这里进行学习查看
还是以monolog为例子,我们可以通过追加require的方式来实现,最后的require则为:

"require": {
    "php": ">=5.4.0",
    "monolog/monolog": "1.2.*"
  }

接着保存json文件,进入cmd,将目录定位到json文件的同级,输入:

composer update

然后就进入更新包的阶段

当出现

说明我们已经安装好了,打开框架中的vendor目录可以查看到相关文件

如何使用

当我们拉取好库的时候如何进行使用呢,PHP300Framework在运行的时候会自动载入相关库文件,所以您只需要在控制器进行使用就好了,拿上面的monolog来说,我们可以在控制器中直接使用:

public function logs()
{
    //实例化日志类
    $log = new \Monolog\Logger('User');

    $date = date('Y-m-d');

    //压入日志文件句柄信息,文件不存在则创建,这里文件创建在D盘中
    $log->pushHandler(new \Monolog\Handler\StreamHandler('D:\sql_'.$date.'.log', \Monolog\Logger::DEBUG));

    $error_str = 'this is debug';

    //追加日志内容
    $log->addDebug($error_str,['name' => 'joker']);
}