【问题标题】:How to print the current working directory's php version in a dual environment如何在双重环境下打印当前工作目录的php版本
【发布时间】:2016-02-26 06:57:10
【问题描述】:

在安装了多个 php 版本的 Linux 服务器上,我正在寻找一个简单的命令来通过命令行向我显示当前工作目录所使用的 php 版本。

起初我尝试简单地使用

php -v

但这显然只显示了服务器的默认 php 版本,而不是 .htaccess 为当前目录设置的版本。

我们将不胜感激任何帮助或推动正确方向的努力。

【问题讨论】:

  • 为什么不直接使用 我的意思是;我知道这不是您问题的答案,但使用起来可能更简单......
  • 当您通过命令行运行 php 时,不涉及网络服务器(nginx、apache)。要运行不同的版本,您只需调用另一个可执行文件。

标签: php linux bash .htaccess shell


【解决方案1】:

一种方法是在当前目录中添加一个php页面,其中包含以下内容。

< ?php phpinfo(); ?>

浏览到可能是version.php之类的页面名称,它将被显示出来。

另外,我猜如果你可以访问 .htaccess 文件,你总是可以为 AddHandler 运行一个 grep,这将说明 .htaccess 文件所在的目录使用的 php 版本。

$ grep AddHandler .htaccess
AddHandler application/x-httpd-php54 .php

否则,在不知道 php 版本并在 /bin 中指向正确的 php 命令的情况下,我知道没有其他命令可以执行此操作。我希望这会有所帮助。

【讨论】:

  • 这几乎就是我一直在尝试的。没有使用 phpinfo(),它可以告诉我当前工作目录的有效 php 版本,即使该目录中没有 .htaccess,我还没有完全了解 phpinfo() 是如何做到的。理想情况下,我会做一个 find -name '.htaccess' exec grep -EHo 'AddHandler' (或类似的东西)并让它只向我发送当前目录中的 .htaccess 或它之前的下一个目录中的行包含该行的 .htaccess 文件。到目前为止,我还是太新了,甚至无法开始想出一个合适的方法来做到这一点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-24
  • 1970-01-01
  • 1970-01-01
  • 2017-01-18
相关资源
最近更新 更多