如何从CLI中查找php中内置模块的版本号


how to find the version numbers of built in modules in php from the CLI

基本上我是php的新手,我刚刚在我的机器上安装了php。因此,我们可以通过创建一个php文件和在中写入以下代码

<?php 
  phpinfo();
?>

我通过浏览器打开了这个,可以看到的所有配置信息

但是有什么方法可以从linux终端了解php默认模块的版本吗(顺便说一句,我使用的是fedora:)

所以我想问的是,是否有任何方法可以通过一些php命令从终端找到所有模块或单个模块的版本号?

例如,有一个命令php -me,当php像下面一样安装时,它显示默认情况下的所有php模块

[PHP modules]
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
readline
Reflection
session
shmop
....
.....

但同样,我也想从终端中找到单个模块的版本号,我们如何才能找到它?

要查看某个特定模块的版本,可以使用命令php --ri <module> | grep Version

例如:

php --ri mongo | grep Version

退货:

Version => 1.6.5

这应该可以做到:

php -r 'foreach (get_loaded_extensions() as $extension) echo "$extension: " . phpversion($extension) . "'n";'

可读性更强的版本(用于代码使用):

$extensions = get_loaded_extensions();
foreach ($extensions as $extension) {
    echo "$extension: " . phpversion($extension) . "'n";
}

如果您想在脚本中执行phpversion()命令,那么您需要它http://php.net/manual/en/function.phpversion.php