Menu
Coddy logo textTech

חותמות זמן של Unix עם 'time()'

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-PHP של Coddy. שיעור 47 מתוך 68.

חותמת זמן של Unix היא דרך לייצג רגע מסוים בזמן כמספר יחיד. היא סופרת את מספר השניות שעברו מאז 1 בינואר 1970, בשעה 00:00:00 UTC, רגע המכונה תחילת Unix. השיטה הסטנדרטית הזו מקלה על מחשבים לאחסן תאריכים ושעות, להשוות ביניהם ולבצע איתם חישובים.

PHP מספקת את הפונקציה time() כדי לקבל את חותמת הזמן הנוכחית של Unix. כשקוראים לפונקציה הזו, היא מחזירה את מספר השניות מאז תחילת תקופת Unix ועד לרגע הנוכחי. חותמת הזמן הזו שימושית במיוחד משום שהיא אינה תלויה באזורי זמן ומספקת דרך עקבית לעבוד עם תאריכים במערכות שונות.

<?php
$currentTimestamp = time();
echo $currentTimestamp;  // מדפיס משהו כמו: 1710515425
?>

היתרון של חותמות זמן של Unix מתגלה כשמשלבים אותן עם הפונקציה date() שלמדת קודם. אפשר להעביר חותמת זמן כפרמטר השני אל date() כדי לעצב כל רגע מסוים בזמן, ולא רק את הרגע הנוכחי. כך נוצר שילוב רב־עוצמה לעבודה עם תאריכים באפליקציות שלך.

challenge icon

אתגר

קל

תקבלו קלט אחד: חותמת זמן של Unix כמספר. הקלט יהיה חותמת זמן המייצגת רגע מסוים בזמן (לדוגמה: 1710515425).

קראו את חותמת הזמן מהקלט, השתמשו בפונקציה date() כדי לעצב את חותמת הזמן כתאריך ושעה קריאים, והדפיסו את התוצאה בתבנית Y-m-d H:i:s (שנה-חודש-יום שעה:דקה:שנייה).

זכרו ש-date() מקבלת חותמת זמן כפרמטר השני שלה כדי לעצב כל רגע מסוים בזמן, ולא רק את הרגע הנוכחי.

תבנית הקלט: שורה אחת המכילה חותמת זמן של Unix כמספר (לדוגמה: 1710515425)

הפלט הצפוי: התאריך והשעה המעוצבים בתבנית Y-m-d H:i:s

נסו בעצמכם

<?php
// קראו את חותמת הזמן של Unix
$timestamp = intval(fgets(STDIN));

// TODO: כתבו את הקוד שלכם למטה כדי לעצב את חותמת הזמן באמצעות date()

// הציגו את התאריך והשעה המעוצבים
echo $formattedDate;
?>
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

תרגלו בעצמכם: קומפיילר PHP אונליין