EdgeScript menyediakan fungsi waktu berikut untuk digunakan dalam CDN EdgeScript.
| Function | Description |
|---|---|
today() | Mengembalikan tanggal saat ini sebagai string (yyyy-mm-dd) |
time() | Mengembalikan stempel waktu UNIX saat ini dalam satuan detik bulat |
now() | Mengembalikan stempel waktu UNIX saat ini dengan presisi milidetik |
localtime() | Mengembalikan tanggal dan waktu lokal saat ini sebagai string (yyyy-mm-dd hh:mm:ss) |
utctime() | Mengembalikan tanggal dan waktu UTC saat ini sebagai string (yyyy-mm-dd hh:mm:ss) |
cookie_time(sec) | Mengonversi stempel waktu UNIX ke string waktu GMT dalam format cookie |
http_time(sec) | Mengonversi stempel waktu UNIX ke string waktu GMT dalam format Header HTTP |
parse_http_time(str) | Mengurai string waktu dalam format HTTP dan mengembalikan stempel waktu UNIX yang sesuai |
unixtime(year, month, day, hour, min, sec) | Mengonversi tanggal dan waktu ke stempel waktu UNIX |
today
| Field | Detail |
|---|---|
| Syntax | today() |
| Description | Mengembalikan tanggal saat ini (waktu lokal) dalam format yyyy-mm-dd. |
| Parameters | Tidak ada |
| Return value | String — tanggal lokal saat ini dalam format yyyy-mm-dd |
Example
say(concat('today:', today()))
# Output: today:2019-05-23time
| Field | Detail |
|---|---|
| Syntax | time() |
| Description | Mengembalikan stempel waktu UNIX saat ini sebagai bilangan bulat dalam satuan detik penuh. Gunakan now() jika Anda memerlukan presisi milidetik. |
| Parameters | Tidak ada |
| Return value | Integer — stempel waktu UNIX saat ini dalam satuan detik |
Stempel waktu UNIX merepresentasikan jumlah detik yang telah berlalu sejak pukul 00:00:00 UTC pada 1 Januari 1970 (Unix epoch). Nilai ini tidak bergantung pada zona waktu.
Example
say(concat('time:', time()))
# Output: time:1559109666now
| Field | Detail |
|---|---|
| Syntax | now() |
| Description | Menanyakan stempel waktu UNIX saat ini, tanpa bagian pecahan milidetik. Satuan: detik. |
| Parameters | Tidak ada |
| Return value | Stempel waktu UNIX saat ini, tanpa bagian pecahan milidetik. Satuan: detik. |
Stempel waktu UNIX merepresentasikan jumlah detik yang telah berlalu sejak pukul 00:00:00 UTC pada 1 Januari 1970 (Unix epoch). Nilai ini tidak bergantung pada zona waktu.
Example
say(concat('now:', now()))
# Output: now:1559109666.644localtime
| Field | Detail |
|---|---|
| Syntax | localtime() |
| Description | Mengembalikan tanggal dan waktu lokal saat ini dalam format yyyy-mm-dd hh:mm:ss. |
| Parameters | Tidak ada |
| Return value | String — tanggal dan waktu lokal saat ini dalam format yyyy-mm-dd hh:mm:ss |
Example
say(concat('localtime:', localtime()))
# Output: localtime:2019-05-29 14:02:41utctime
| Field | Detail |
|---|---|
| Syntax | utctime() |
| Description | Mengembalikan tanggal dan waktu UTC saat ini dalam format yyyy-mm-dd hh:mm:ss. |
| Parameters | Tidak ada |
| Return value | String — tanggal dan waktu UTC saat ini dalam format yyyy-mm-dd hh:mm:ss |
Example
say(concat('utctime:', utctime()))
# Output: utctime:2019-05-29 06:02:41cookie_time
| Field | Detail |
|---|---|
| Syntax | cookie_time(sec) |
| Description | Mengonversi stempel waktu UNIX ke string waktu GMT dalam format cookie. |
| Parameters | sec — stempel waktu UNIX (integer). Panggil time() untuk mendapatkan stempel waktu saat ini. |
| Return value | String — string waktu GMT dalam format cookie: Wed, 29-May-19 06:02:41 GMT |
Example
say(concat('cookie_time:', cookie_time(time())))
# Output: cookie_time:Wed, 29-May-19 06:02:41 GMThttp_time
| Field | Detail |
|---|---|
| Syntax | http_time(sec) |
| Description | Mengonversi stempel waktu UNIX ke string waktu GMT untuk digunakan dalam Header HTTP, seperti Last-Modified. |
| Parameters | sec — stempel waktu UNIX (integer). Panggil time() untuk mendapatkan stempel waktu saat ini. |
| Return value | String — string waktu GMT dalam format HTTP-date: Wed, 29 May 2019 06:02:41 GMT |
String waktu selalu dalam GMT.
Example
say(concat('http_time:', http_time(time())))
# Output: http_time:Wed, 29 May 2019 06:02:41 GMTparse_http_time
| Field | Detail |
|---|---|
| Syntax | parse_http_time(str) |
| Description | Mengurai string waktu dalam format HTTP dan mengembalikan stempel waktu UNIX yang sesuai. Mengembalikan false jika penguraian gagal. |
| Parameters | str — string waktu dalam format Wed, 29 May 2019 06:02:41 GMT. Panggil http_time() untuk menghasilkan string input yang valid. |
| Return value | Integer — stempel waktu UNIX jika penguraian berhasil; false jika penguraian gagal |
Fungsi ini tidak menangani konversi zona waktu. Konversikan waktu ke GMT sebelum meneruskannya ke fungsi ini.
Examples
# Penguraian berhasil
say(concat('parse_http_time:', parse_http_time(http_time(time()))))
# Output: parse_http_time:1559109761
# Penguraian gagal — input tidak valid mengembalikan false
say(concat('parse_http_time:', parse_http_time('not-a-valid-time')))
# Output: parse_http_time:falseunixtime
| Field | Detail |
|---|---|
| Syntax | unixtime(year, month, day, hour, min, sec) |
| Description | Mengonversi tanggal dan waktu ke stempel waktu UNIX. |
| Parameters | year, month, day, hour, min, sec — nilai integer yang menentukan komponen tanggal dan waktu |
| Return value | Integer — stempel waktu UNIX yang sesuai dengan tanggal dan waktu yang ditentukan |
Stempel waktu UNIX merepresentasikan jumlah detik yang telah berlalu sejak pukul 00:00:00 UTC pada 1 Januari 1970 (Unix epoch). Nilai ini tidak bergantung pada zona waktu.
Examples
t = unixtime(1970, 1, 1, 8, 0, 0)
say(concat('unixtime()=', t))
# Output: unixtime()=0
# 2021-12-23 00:00:00
t = unixtime(2021, 12, 23, 0, 0, 0)
say(concat('unixtime()=', t))
# Output: unixtime()=1640188800