PHP - 获取当前的 PHP 版本发布日期

标签 php version maintainability

是否可以在 php 中获取服务器 php 版本发布日期

假设我有 php 5.3.28

phpdate() 应该返回 2013 年 7 月 11 日

最佳答案

你是说构建日期

function phpdate($format="d M Y")
{
  ob_start(); phpinfo(1);
  if(preg_match('~Build Date (?:=> )?\K.*~', strip_tags(ob_get_clean()), $out))
    return date($format, strtotime($out[0]));
}

echo phpdate();

04 Mar 2013

Test at eval.in (链接即将过期)


更新:获取实际的release date在 Linux 上,可以匹配 phpversion()在变更日志中:

// match phpversion() in changelog
function phpReleaseDate()
{
  $log = `zgrep '^[0-9].*PHP' /usr/share/doc/php5/changelog.gz`;
  $ver = preg_replace('/^\d+\.\d+\.\d+\K.*/', "", phpversion());
  $find = '/^(\d{2} [A-Z][a-z]{2} \d{4}), PHP ('.preg_quote($ver).')/';

  if(preg_match($find, $log, $out))
    return array('ver' => $out[2], 'date' => $out[1]);
}

print_r(phpReleaseDate());

Array ( [ver] => 5.3.3 [date] => 22 Jul 2010 )

在 Debian Linux 上试过这个。

关于PHP - 获取当前的 PHP 版本发布日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28250415/

相关文章:

java - Eclipse 中的 Ant 脚本使用了不正确的 Java 版本

node.js - openShift Node 版本上的 meteor

git - 如何使 "git describe"提及本地更改的存在或不存在?

c++ - 缩短作为模板参数传递到 CRTP ("pass me"中的长模板派生类)

android - 如何以易于维护的格式组合图像、字符串和整数集

php - 获取数据库的所有表

php - 通过 PDO 选择并从 MySQL 打印数据的问题

javascript - Yii错误无法读取未定义的属性 'submitForm'

PHP SoapClient::SoapClient 失败:SSL:握手计时且无法启用加密