【问题标题】:How to get the PHP Version?如何获取 PHP 版本?
【发布时间】:2010-01-22 00:01:22
【问题描述】:

有没有办法检查从该脚本中执行特定脚本的 PHP 版本?所以比如下面的sn -p

$version = way_to_get_version();
print $version;

将在一台机器上打印 5.3.0,在另一台机器上打印 5.3.1。

【问题讨论】:

标签: php


【解决方案1】:
$version = phpversion();
print $version;

Documentation

但是,为了获得最佳实践,我会使用常量 PHP_VERSION。没有函数开销,而且 IMO 更干净。

此外,如果您要比较 PHP 版本的兼容性,请务必使用 version_compare()

【讨论】:

  • 它只是叫version_compare()
  • 谢谢,这就是我从记忆中回忆的结果!
  • php.net/manual/en/function.phpversion.php#84424 我将始终使用PHP_VERSION 进行最佳实践
  • 这里 PHP_VERSION[0] == 5 或 PHP_VERSION[0] == 7,可以分别比较版本 5 或 7 版本...
  • @user1635700 只要没有第 10 个主要版本:P
【解决方案2】:

从技术上讲,最好的方法是使用常量 PHP_VERSION,因为它不需要函数调用和随之而来的开销。

echo PHP_VERSION;

常量总是比函数调用快。

【讨论】:

  • 变量?!这是一个常数!
  • 在这种情况下,是的,因为我指的是在这个对话范围内的一个明确的编程网站,因此是明确的冠词:)
【解决方案3】:

您可以使用phpversion() 函数或PHP_VERSION 常量。

要比较版本,您应该始终依赖 version_compare()

【讨论】:

  • "要比较版本,您应该始终依赖 version_compare()。" 想补充一下原因吗? (我在询问,不是在暗示你不正确)
  • @James:version_compare() 比算术运算符更强大:ideone.com/0QQwq7。 PHP 手册有一些很好的例子。
【解决方案4】:

…………

if (version_compare(phpversion(), '5', '>='))
{
       // act accordintly
}

【讨论】:

  • 这就是我需要的
【解决方案5】:

看看phpversion()

echo "Current version is PHP " . phpversion();

【讨论】:

    【解决方案6】:

    【讨论】:

      【解决方案7】:

      phpversion() 会告诉你当前运行的 PHP 版本。

      【讨论】:

        【解决方案8】:

        您可以使用 phpversion() 函数来获取 php 版本

        例如。 echo 'PHP version: ' . phpversion();

        【讨论】:

          【解决方案9】:

          phpversion() 是一种方式。正如 John conde 所说,PHP_VERSION 是另一个(直到现在我才知道)。

          您可能也对function_exists()感兴趣

          【讨论】:

            【解决方案10】:

            你可以使用 phpversion();查找当前版本的函数

                <?php echo 'Current PHP version: ' . phpversion(); ?>
            

            【讨论】:

              【解决方案11】:

              如果您将 phpversion() 的输出类型转换为浮点数,它将为您提供主要和次要版本部分。这样您就可以轻松实现 PHP 兼容性。

              $version = (float)phpversion();
              if ($version > 7.0) {
                  //do something for php7.1 and above.
              } elseif ($version === 7.0) {
                  //do something for php7.0
              } else {
                  //do something for php5.6 or lower.
              }
              

              【讨论】:

              • 你真的应该使用version_compare(),因为这是它的设计目的。
              猜你喜欢
              • 2017-05-06
              • 2019-05-28
              • 2019-12-04
              • 2021-08-25
              • 2015-09-23
              • 1970-01-01
              • 2018-08-24
              • 1970-01-01
              相关资源
              最近更新 更多