Как проверить версию моего скрипта на онлайн-файл, чтобы узнать, является ли последняя версия?
Для пояснения я говорю о сценарии, который я написал, а не о версии PHP. Я хотел бы включить способ для конечного пользователя рассказать, когда я обновил сценарий.
Чтобы указать второе (более простое) решение, предлагаемое 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
По комментариям к этому ответу
// 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]; }
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>"; }
Имейте канал RSS или Atom с информацией об обновлении. WordPress делает что-то подобное. Затем вы можете локально сохранять информацию о том, какие обновления были показаны пользователю и т. Д.
Для еще более простого решения укажите файл на веб-сайте проекта, который будет содержать только номер версии. Затем сравните его с номером версии, хранящимся в вашей программе, возможно, внутри константы.