34#if defined(PHP_NEED_REENTRANCY)
40#define local_lock(x) tsrm_mutex_lock(reentrant_locks[x])
41#define local_unlock(x) tsrm_mutex_unlock(reentrant_locks[x])
46#define local_unlock(x)
50#if defined(PHP_IRIX_TIME_R)
53#define HAVE_ASCTIME_R 1
71#if defined(PHP_HPUX_TIME_R)
73#define HAVE_LOCALTIME_R 1
75#define HAVE_ASCTIME_R 1
76#define HAVE_GMTIME_R 1
80 if (localtime_r(timep, p_tm) == 0)
101 if (gmtime_r(timep, p_tm) == 0)
108#if !defined(HAVE_LOCALTIME_R) && defined(HAVE_LOCALTIME)
118 memcpy(p_tm, tmp,
sizeof(
struct tm));
129#if !defined(HAVE_CTIME_R) && defined(HAVE_CTIME)
150#if !defined(HAVE_ASCTIME_R) && defined(HAVE_ASCTIME)
171#if !defined(HAVE_GMTIME_R) && defined(HAVE_GMTIME)
181 memcpy(p_tm, tmp,
sizeof(
struct tm));
192#if defined(PHP_NEED_REENTRANCY)
199 reentrant_locks[i] = tsrm_mutex_alloc();
208 tsrm_mutex_free(reentrant_locks[i]);
279 for (spanp = (
char *)delim; (sc = *spanp++) != 0; )
301 spanp = (
char *)delim;
304 if ((sc = *spanp++) == c)
zend_ffi_ctype_name_buf buf
char * asctime_r(const struct tm *, char *)
char * ctime_r(const time_t *, char *)
localtime(?int $timestamp=null, bool $associative=false)
#define reentrancy_shutdown()
#define reentrancy_startup()
PHPAPI struct tm * php_localtime_r(const time_t *const timep, struct tm *p_tm)
PHPAPI struct tm * php_gmtime_r(const time_t *const timep, struct tm *p_tm)
PHPAPI char * php_strtok_r(char *s, const char *delim, char **last)
PHPAPI char * php_ctime_r(const time_t *clock, char *buf)
PHPAPI char * php_asctime_r(const struct tm *tm, char *buf)