KSWEB Composer 包管理 PRO 版专属 框架项目装依赖利器
什么是 Composer
Composer 是 PHP 生态的标准包管理工具,类似 Node.js 的 npm 或 Python 的 pip。项目根目录放一个 composer.json 声明依赖,composer install 一键把所有依赖包下载好、装到 vendor/ 目录里。
KSWEB PRO 版内置 Composer,Standard 版没有——如果需要跑 Yii2、Laravel、Symfony 这类框架项目,升级 PRO 是必须的。
基本用法
验证装好了
composer --version
应该输出 Composer 版本号,比如 Composer version 2.7.x。没有输出说明 Standard 版或环境 PATH 没配对。
创建一个新项目
比如 Yii2:
cd /storage/emulated/0/htdocs
composer create-project yiisoft/yii2-app-basic myapp
比如 Laravel:
composer create-project laravel/laravel mylaravel
给已有项目加依赖
进入项目根目录:
cd myapp
composer require guzzlehttp/guzzle
Composer 会自动更新 composer.json 和 composer.lock,下载最新兼容版本到 vendor/guzzlehttp/guzzle/。
安装项目已有依赖
从 GitHub clone 下来的项目如果没带 vendor/ 目录(一般 gitignore 了):
composer install
会按 composer.lock 锁定的版本装完整套依赖。
更新依赖
composer update
国内网络加速
手机上跑 Composer 最怕网络慢或被墙。把 Composer 的镜像源换成国内的(阿里云):
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
换成官方源:
composer config -g --unset repos.packagist
镜像源对框架项目特别重要——Yii2 的 bower-asset / npm-asset 包不在 packagist 上,需要额外配置 asset-packagist。
Composer + 缓存的坑
Composer 默认把所有包缓存到手机存储的某个目录(.composer/cache)。如果装到一半断网了重来,缓存会帮你跳过已下载的包。
但也要注意:
- 磁盘空间 — 装完一个 Laravel 项目 vendor/ 目录可能上百 MB,定期清理一下
- 权限 — 有时缓存权限不对导致 Composer 报"无法写入缓存",删掉
.composer目录重来 - update 超时 — 移动网络下跑 update 不如先在电脑上跑完再整个 vendor/ 目录 FTP 上来
项目里用 Composer 自动加载
Composer 会在 vendor/autoload.php 里生成类映射,PHP 代码里一行 require __DIR__ . '/vendor/autoload.php'; 就能自动加载所有依赖包的类,不用自己 include 一堆文件。Yii2 / Laravel 都靠这个机制工作,删掉 vendor/autoload.php 整个项目就起不来。