命令行环境中可用的PHP配置和扩展
封面图
•
2026-01-11
•
PHP
380
0
0
0
在命令行环境中(CLI, Command Line Interface)使用 PHP 时,PHP 的配置和扩展与 Web 环境(如 Apache 或 Nginx)中的配置基本相同,但有一些区别。以下是一些关键点: --- ## ✅ 一、查看当前 PHP CLI 配置 你可以通过以下命令查看 PHP CLI 的配置信息: ```bash php -i ``` 这会显示所有 PHP 配置信息,包括: - `php.ini` 路径 - 已加载的扩展 - 当前 PHP 版本 - 扩展信息等 --- ## ✅ 二、查看当前 PHP CLI 加载的扩展 ```bash php -m ``` 该命令会列出所有已加载的 PHP 扩展。 --- ## ✅ 三、查看 `php.ini` 文件路径 ```bash php --ini ``` 输出示例: ``` Configuration File (php.ini) Path: /etc/php/8.1/cli Loaded Configuration File: /etc/php/8.1/cli/php.ini ``` --- ## ✅ 四、PHP CLI 和 Web 环境的区别 | 特性 | CLI 模式 | Web 模式(Apache/Nginx) | |------|----------|---------------------------| | 配置文件路径 | 通常不同(如 `/etc/php/8.1/cli/php.ini`) | 通常不同(如 `/etc/php/8.1/apache2/php.ini`) | | 默认扩展 | 有些扩展默认不加载(如 `mysql`, `mysqli`) | 通常更完整,包含更多扩展 | | 运行方式 | 直接执行脚本 | 通过 Web 服务器处理请求 | | 输出方式 | 有颜色输出、调试信息等 | 可能被过滤或禁用 | --- ## ✅ 五、修改 PHP CLI 配置 要修改 CLI 模式的 PHP 配置,你需要编辑对应的 `php.ini` 文件,例如: ```bash sudo nano /etc/php/8.1/cli/php.ini ``` 修改后需要重启 PHP 或重新运行脚本以生效。 --- ## ✅ 六、常用 PHP CLI 扩展(可选) 以下是一些常用的 PHP 扩展,可能在 CLI 中未默认启用,可以通过 `php.ini` 启用: | 扩展名 | 功能 | |--------|------| | `opcache` | 提升性能 | | `pdo_mysql` | MySQL 数据库支持 | | `curl` | 支持 HTTP 请求 | | `mbstring` | 多字节字符串处理 | | `zip` | 压缩和解压 ZIP 文件 | | `xml` | XML 解析 | | `gd` | 图像处理 | | `intl` | 国际化支持 | --- ## ✅ 七、启用或禁用扩展 在 `php.ini` 中,你可以通过以下方式控制扩展: ```ini ; 启用扩展 extension=mysqli ; 禁用扩展 ; extension=pdo_mysql ``` --- ## ✅ 八、检查 PHP CLI 是否可用 ```bash php -v ``` 输出示例: ``` PHP 8.1.12 (cli) (NTS) Copyright (c) The PHP Group Zend Engine v4.1.12, Copyright (c) Zend Technologies with Xdebug v3.2.0, Copyright (c) 2021 Derick Rethans ``` --- ## ✅ 九、PHP CLI 的用途 PHP CLI 主要用于: - 运行脚本(如定时任务、后台进程) - 执行命令行工具(如 Laravel 的 Artisan、Composer) - 调试脚本 - 执行单元测试(如 PHPUnit) --- ## ✅ 十、常见问题排查 ### Q:为什么 CLI 模式下某些扩展不可用? A:因为 CLI 和 Web 模式使用不同的 `php.ini` 文件。请确认你是否修改了正确的配置文件。 ### Q:如何在 CLI 中运行带有 `xdebug` 的脚本? A:确保 `xdebug` 在 `php.ini` 中启用,并且你不是通过 Web 服务器运行脚本。 --- 如果你告诉我你使用的 PHP 版本或操作系统(如 Ubuntu、CentOS、Windows),我可以提供更具体的配置路径和指令。
上一篇:
直接在命令行中执行PHP代码
下一篇:
汉字六书
标题录入,一次不能超过6条
留言
评论