✅ IsInstalled
判断 Composer 是否已安装。
何时使用
当只需要布尔结果(例如安装前检查、运行前确认环境)时使用。它会依次查找 PATH 中的 composer 以及常见安装位置。🎯
签名
go
func (i *Installer) IsInstalled() bool参数
| 参数 | 类型 | 说明 |
|---|---|---|
| 无 | — | 该方法无参数 |
返回值
bool:true表示找到了 composer 可执行文件;false表示未找到。
示例
go
package main
import (
"fmt"
"github.com/scagogogo/composer-skills/pkg/installer"
)
func main() {
i := installer.DefaultInstaller()
if i.IsInstalled() {
fmt.Println("Composer 已安装")
} else {
fmt.Println("Composer 未安装,将执行安装")
_ = i.Install()
}
}进阶
- 实现等价于
_, err := findComposerBinary(); return err == nil,查找位置包括PATH、/usr/local/bin/composer、/usr/bin/composer、/opt/homebrew/bin/composer。🔍 - 如需同时拿到路径和版本,使用包级函数
IsComposerInstalled。🚀 - 这是
InstallWithProgress内部验证安装是否成功的同一套逻辑。🧩