发布于2026-07-11 阅读(0)
扫一扫,手机访问
phpEnv 本身并不支持直接安装 PHP-ML——它既不是 Composer 包管理器,也不提供扩展编译功能。你看到的“PHP-ML”是一个纯 PHP 编写的机器学习库(php-ai/php-ml),必须通过 composer require php-ai/php-ml 来安装,而且依赖 PHP 7.4 以上版本以及几个关键扩展,比如 ext-gmp、ext-json、ext-mbstring。phpEnv 的角色仅仅是提供可运行的 PHP 解释器环境,它不负责处理 Composer 包或者算法库。所以,如果你在 phpEnv 里直接运行 composer 命令遇到了问题,责任不在 phpEnv 本身,而是在环境配置上。

常见的报错信息包括 Class 'Phpml\Classification\KNearestNeighbors' not found 或者 Command "require" is not defined。追根溯源,问题出在三个地方:
ext-gmp——这是 PHP-ML 的强依赖,但在 Windows 下默认是关闭的,很多人会忽略这一步。php 时,调用的其实是系统自带的旧版 PHP,而不是 phpEnv 当前激活的那个版本。composer.json,或者直接运行脚本之前忘了执行 composer install,导致自动加载机制没生效。分三步走,缺一不可:
php.ini 文件,搜索 ;extension=php_gmp.dll,去掉前面的分号,保存后重启 Apache 服务。D:\phpEnv\php\php-8.2.12\php.exe -v 确认版本正确。composer init → composer require php-ai/php-ml,然后检查生成的 vendor/autoload.php 是否被正确引入。写一个 test-ml.php 放在站点目录下,内容如下:
train($dataset); echo $classifier->predict([0.5, 0.5]); // 输出可能是 'B'?>
这个例子不依赖任何外部数据或模型文件,但要求 ext-gmp 已启用、Composer 自动加载正常、且 phpEnv 的 PHP 版本 ≥ 7.4(推荐 8.1+)。
最容易被忽略的一点:phpEnv 的“PHP 配置”界面修改的是 Apache 模块使用的 php.ini,而命令行 PHP(CLI)可能读取另一个 php.ini——请用 php --ini 命令确认 CLI 加载的是哪个配置文件,并同步开启 gmp 扩展。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8