> Composer是PHP中用来管理依赖关系的工具。你可以在自己的项目中声明所依赖的外部工具库,Composer会帮你安装这些依赖的库文件。随着时间的演化,Composer已经成为一个主流的PHP包管理工具。
#### 如何拉取
>1.使用composer拉去库有两种方式,第一种则通过命令行进行拉取
>例如,当需要集成`monolog`的时候,我们只要知道composer默认会将库默认置入当前文件夹下的`vendor`文件夹中即可
>所以,我们可以通过命令行定位到框架根目录中,无论windows还是linux这是通用的,以下命令以windows中为例,假设我们的框架安装在phpstudy的环境目录下,路径为`D:\phpstudy\www`,我们可以使用管理员身份运行cmd输入:
>```cmd
>cd /d D:\phpstudy\www
>```
>然后我们就可以通过命令行进行拉取了
>```cmd
>composer require monolog/monolog
> ```
> 等待片刻,composer会自动获取`monolog`相关文件到本地,如果您觉得太慢我们可以在命令行中执行命令,切换到国内线路:
> ```cmd
> composer config -g repo.packagist composer https://packagist.phpcomposer.com
> ```
> 2.接下来说一下第二种方式,第二种方式和第一种差不多,其中多了一个就是json文件了
> 在框架根目录中我们会发现一个`composer.json`文件,我们可以用编辑器打开它,我们可以不用看其他信息,找到`require`键,里面默认有一个` "php": ">=5.4.0"`,意思是使用的php版本必须大于5.4.0
> 我们可以用过`"库名称":"版本号的方式"`来定义自己需要的库列表,具体的版本约束方式,[点击这里进行学习查看](http://docs.phpcomposer.com/01-basic-usage.html#Package-Versions)
> 还是以`monolog`为例子,我们可以通过追加`require`的方式来实现,最后的require则为:
```json
"require": {
"php": ">=5.4.0",
"monolog/monolog": "1.2.*"
}
```
接着保存json文件,进入cmd,将目录定位到json文件的同级,输入:
```cmd
composer update
```
然后就进入更新包的阶段
![](https://box.kancloud.cn/4e312ea690d473f55ca81de7b07a1738_495x99.png)
当出现
![](https://box.kancloud.cn/536fb0fbcd96867c26264f3723735b9b_641x65.png)
说明我们已经安装好了,打开框架中的vendor目录可以查看到相关文件
#### 如何使用
> 当我们拉取好库的时候如何进行使用呢,PHP300Framework在运行的时候会自动载入相关库文件,所以您只需要在控制器进行使用就好了,拿上面的`monolog`来说,我们可以在控制器中直接使用:
```php
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']);
}
```
- 概述
- 基础
- 安装
- 规范
- 目录
- 环境
- 配置
- 全部配置
- 数据库配置
- 缓存配置
- 框架配置
- 自定义配置
- 读取配置
- 控制器
- 创建
- 规范
- 继承
- 输出
- 视图
- 基本使用
- 渲染模板
- 赋值变量
- 获取结果
- 模板
- 常用标签
- if - 判断
- foreach - 遍历
- break - 停止循环
- continue - 跳过循环
- @index - 索引
- @iteration - 循环次数
- @first - 首次循环
- @last - 最后循环
- for - 循环
- var - 定义变量
- nocache - 禁用缓存
- assign - 变量赋值
- include - 引入文件
- 变量修饰
- default - 默认输出
- capitalize - 首字母大写
- lower - 字母转小写
- upper - 字符转大写
- count_characters - 统计字符长度
- count_words - 统计单词数量
- date_format - 格式化日期
- Chapter - 文本实体化
- indent - 缩进文本
- nl2br - 转义换行
- replace - 文本替换
- spacify - 插入文本
- string_format - 字符串格式化
- strip - 移除特殊字符
- truncate - 文本截取
- 保留变量
- 数据库
- 配置
- 基本使用
- 数据处理
- 增加数据
- 删除数据
- 修改数据
- 查询数据
- 其他查询
- 关键字
- field
- join
- where
- page
- limit
- orderby
- groupby
- 其他
- 调试
- 缓存
- 各个缓存服务安装
- 基本使用
- 设定缓存
- 查询缓存
- 删除缓存
- 修改缓存
- 清空缓存
- 其他操作
- Session操作
- Cookie操作
- File缓存
- 辅助
- 功能列表
- helper助手
- 扩展
- Composer
- 自定义扩展
- 包扩展
- 访问
- 入口文件
- 静态化
- 路由
- 默认路由
- 传统请求
- 规则
- 其他
- 上传文件
- 写出日志
- 展示状态页
- CLI模式运行
- 上线须知
- 获取GET/POST
- 性能消耗
- 直接访问静态页
- 内置常量
- 图形验证码
- 安装Composer
- 应用扩展
- 支付宝手机端支付
- 支付宝电脑端支付