🧩 GetExtensions
获取当前 PHP 环境中已安装的所有扩展名列表。
何时使用
需要扫描可用扩展集合,或在安装依赖前确认必需扩展是否齐全时使用。
签名
go
func (c *Composer) GetExtensions() ([]string, error)参数
| 参数 | 类型 | 说明 |
|---|---|---|
| 无 | — | 该方法不接收参数 |
返回值
[]string:已安装的 PHP 扩展名列表(已过滤Loaded extensions:标题行和空行)error:执行命令失败时返回错误
示例
go
package main
import (
"fmt"
"log"
"github.com/scagogogo/composer-skills/pkg/composer"
)
func main() {
comp, err := composer.New(composer.DefaultOptions())
if err != nil {
log.Fatal(err)
}
extensions, err := comp.GetExtensions()
if err != nil {
log.Fatalf("获取 PHP 扩展失败: %v", err)
}
fmt.Println("已安装的 PHP 扩展:")
for _, ext := range extensions {
fmt.Println("- " + ext)
}
}进阶
- 该方法执行
composer run --show-extensions并按行解析输出 - 若只需判断单个扩展是否存在,使用更轻量的 HasExtension
- 若要检查扩展是否满足
composer.json的平台约束,使用 CheckPlatform