diff --git a/ext/standard/info.c b/ext/standard/info.c index 8a706ef62eb57..aa03be761c052 100644 --- a/ext/standard/info.c +++ b/ext/standard/info.c @@ -801,7 +801,7 @@ PHPAPI ZEND_COLD void php_print_info(int flag) php_info_print_box_end(); php_info_print_table_start(); php_info_print_table_row(2, "System", ZSTR_VAL(php_uname)); - php_info_print_table_row(2, "Build Date", __DATE__ " " __TIME__); + php_info_print_table_row(2, "Build Date", php_build_date); #ifdef PHP_BUILD_SYSTEM php_info_print_table_row(2, "Build System", PHP_BUILD_SYSTEM); #endif diff --git a/main/main.c b/main/main.c index 0b38f303c58fc..0f422fd3978f1 100644 --- a/main/main.c +++ b/main/main.c @@ -97,6 +97,8 @@ PHPAPI size_t core_globals_offset; #define SAFE_FILENAME(f) ((f)?(f):"-") +const char php_build_date[] = __DATE__ " " __TIME__; + PHPAPI const char *php_version(void) { return PHP_VERSION; @@ -110,8 +112,8 @@ PHPAPI unsigned int php_version_id(void) PHPAPI char *php_get_version(sapi_module_struct *sapi_module) { char *version_info; - spprintf(&version_info, 0, "PHP %s (%s) (built: %s %s) (%s)\nCopyright (c) The PHP Group\n%s%s", - PHP_VERSION, sapi_module->name, __DATE__, __TIME__, + spprintf(&version_info, 0, "PHP %s (%s) (built: %s) (%s)\nCopyright (c) The PHP Group\n%s%s", + PHP_VERSION, sapi_module->name, php_build_date, #ifdef ZTS "ZTS" #else diff --git a/main/main.stub.php b/main/main.stub.php index b5f848dacc82b..3359d4a1cd0bf 100644 --- a/main/main.stub.php +++ b/main/main.stub.php @@ -34,6 +34,13 @@ * @cvalue PHP_VERSION_ID */ const PHP_VERSION_ID = UNKNOWN; + +/** + * @var string + * @cvalue php_build_date + */ +const PHP_BUILD_DATE = UNKNOWN; + /** * @var bool * @cvalue PHP_ZTS diff --git a/main/main_arginfo.h b/main/main_arginfo.h index 28a7d15f89661..f0d2599baf473 100644 --- a/main/main_arginfo.h +++ b/main/main_arginfo.h @@ -1,5 +1,5 @@ /* This is a generated file, edit the .stub.php file instead. - * Stub hash: 793b455a47a0422cee767ef2f6a448a369520542 */ + * Stub hash: cb5c9a3e48b18a773264378099267550ca9e4fc1 */ static void register_main_symbols(int module_number) { @@ -9,6 +9,7 @@ static void register_main_symbols(int module_number) REGISTER_LONG_CONSTANT("PHP_RELEASE_VERSION", PHP_RELEASE_VERSION, CONST_PERSISTENT); REGISTER_STRING_CONSTANT("PHP_EXTRA_VERSION", PHP_EXTRA_VERSION, CONST_PERSISTENT); REGISTER_LONG_CONSTANT("PHP_VERSION_ID", PHP_VERSION_ID, CONST_PERSISTENT); + REGISTER_STRING_CONSTANT("PHP_BUILD_DATE", php_build_date, CONST_PERSISTENT); REGISTER_BOOL_CONSTANT("PHP_ZTS", PHP_ZTS, CONST_PERSISTENT); REGISTER_BOOL_CONSTANT("PHP_DEBUG", PHP_DEBUG, CONST_PERSISTENT); REGISTER_STRING_CONSTANT("PHP_OS", PHP_OS_STR, CONST_PERSISTENT); diff --git a/main/php.h b/main/php.h index a7ff4b6e35bea..5c0b89c328375 100644 --- a/main/php.h +++ b/main/php.h @@ -265,6 +265,8 @@ END_EXTERN_C() extern char **environ; #endif /* ifndef PHP_WIN32 */ +extern const char php_build_date[]; + #ifdef PHP_PWRITE_64 ssize_t pwrite(int, void *, size_t, off64_t); #endif diff --git a/tests/basic/build_date.phpt b/tests/basic/build_date.phpt new file mode 100644 index 0000000000000..44f09bab59aea --- /dev/null +++ b/tests/basic/build_date.phpt @@ -0,0 +1,8 @@ +--TEST-- +PHP_BUILD_DATE +--FILE-- + +--EXPECTREGEX-- +string\(20\) "[A-Za-z]{3} \d{2} \d{4} \d{2}:\d{2}:\d{2}"