📦 Install
安装 Composer 到系统,自动处理 PHP 依赖与平台差异。
何时使用
当你需要在当前机器上安装 Composer(且未指定版本)时使用。该方法会先检查 PHP,再按配置决定是否走包管理器或直接下载,最后由平台特定安装器执行实际安装。🚀
签名
go
func (i *Installer) Install() error参数
| 参数 | 类型 | 说明 |
|---|---|---|
| 无 | — | 行为由创建 Installer 时传入的 Config 决定 |
返回值
error:成功为nil;缺失 PHP 返回ErrPHPNotFound;权限不足返回ErrInsufficientRights;不支持的平台返回ErrUnsupportedPlatform。⚠️
示例
go
package main
import (
"fmt"
"log"
"github.com/scagogogo/composer-skills/pkg/installer"
)
func main() {
i := installer.DefaultInstaller()
if err := i.Install(); err != nil {
log.Fatalf("安装失败: %v", err)
}
fmt.Println("Composer 安装完成")
}进阶
- 若
Config.AutoInstallPHP为true,缺失 PHP 时会尝试自动安装 PHP。🛠️ - Linux 上若
Config.PreferPackageManager为true,会优先用 apt/dnf 等安装,失败再回退到直接下载。🐧 - 如需安装指定版本,使用
InstallVersion;如需进度回调与重试,使用InstallWithProgress。⚡