如何确定正在使用哪个 PHP?

Ran*_*ell 10 php

如何确定正在使用哪个 PHP?

例如,如果有/usr/local/bin/phpand usr/local/bin/php5,我怎么知道我的 PHP 脚本正在使用哪个?

qua*_*mis 12

如果您使用的是 PHP CLI,请尝试使用这些 shell 命令(我假设您在这里使用的是 linux)

which php - will locate the php executable (this should be the default php used by you)
whereis php - The first path displayed will be the location of the php executable
echo $PATH - will print a list of paths separated by ":" where the system looks for commands
Run Code Online (Sandbox Code Playgroud)

如果您使用 PHP 作为 Apache 模块,那么 phpinfo() 会告诉您使用的 php 版本和 php 配置文件,而不是 php path。如果您有 2 个版本的 php 可执行文件,那么这将对您有所帮助。如果它们是相同的版本,那么哪一个是谁并不重要:)

如果您想找出 php 版本,那么 php -v 将在 CLI 和安装的任何 Zend 模块中打印 php 版本。

如果您想找出包含的 ini 文件,则 php --ini 将显示由 php 模块加载的 ini 文件列表(这适用于 CLI 版本)。


Cha*_*ara 7

只需添加一个简单的脚本

<?php phpinfo(); ?>
Run Code Online (Sandbox Code Playgroud)


Kyl*_*ndt 5

假设您通过 Web 服务器使用:
您可以将以下函数放入脚本中:

<?php 
phpinfo(); 
?>
Run Code Online (Sandbox Code Playgroud)

如果这不起作用,可能是因为在 php.ini 中禁用了此功能。通常这样做是为了安全。如果是这种情况,您的 php.ini 中将有一行,如:

disable_functions = phpinfo
Run Code Online (Sandbox Code Playgroud)

如果是这种情况,请暂时将其更改为

disable_functions =
Run Code Online (Sandbox Code Playgroud)

如果您在 Shell 脚本中使用 php:

  1. 顶部应该有“shebang line”,类似于

    #!/usr/local/bin/php -q

  2. 你确定一个不是与另一个的符号链接吗?做

    ls -l /usr/local/bin/php

  3. 别 ;-)


Coo*_*ops 5

同样来自命令行:

$ php -v

PHP 5.2.6-3ubuntu4 with Suhosin-Patch 0.9.6.2 (cli) (built: Mar 31 2009 02:11:31) 版权所有 (c) 1997-2008 The PHP Group Zend Engine v2.2.0, 版权所有 (c) 1998- 2008 Zend 科技