如何根据在线文件查看我的脚本版本以查看它是否是最新版本?
为了澄清,我说的是我写的脚本,而不是PHP的版本。我想为最终用户提供一种方法来告诉我何时更新了脚本。
答案 0 :(得分:15)
指定建议的第二个(更简单)解决方案phjr:
在您自己的公共服务器上有一个文件version.txt
,并在您部署的项目/脚本中包含以下功能:
define('REMOTE_VERSION', 'http://your.public.server/version.txt');
// this is the version of the deployed script
define('VERSION', '1.0.1');
function isUpToDate()
{
$remoteVersion=trim(file_get_contents(REMOTE_VERSION));
return version_compare(VERSION, $remoteVersion, 'ge');
}
version.txt
应该只包含最新的版本号,例如:
1.0.2
答案 1 :(得分:2)
// Substitue path to script with the version information in place of __FILE__ if necessary
$script = file_get_contents(__FILE__);
$version = SOME_SENSIBLE_DEFAULT_IN_CASE_OF_FAILURE;
if(preg_match('/<!-- Script version (\d*(\.\d+)*) -->/', $script, $version_match)) {
$version = $version_match[1];
}
答案 2 :(得分:2)
define('REMOTE_VERSION', 'http://your.public.server/version.txt');
define('VERSION', '1.0.1');
$script = file_get_contents(REMOTE_VERSION);
$version = VERSION;
if($version == $script) {
echo "<div class=success>
<p>You have the latest version!</p>
</div>";
} else {
echo "<div class=error>
<p>There is a update available!</p>
</div>";
}
答案 3 :(得分:0)
使用更新信息获取RSS或Atom Feed 。 Wordpress做了类似的事情。然后,您可以在本地保存已向用户显示更新的信息等。
对于更简单的解决方案,在项目网站上有一个只包含版本号的文件。然后将其与存储在程序中的版本号进行比较,可能在常量内。