שעות ותאריכים בשפת PHP

חשוב לדעת שהזמן ב-PHP לקוח מזמן UNIX. כל פונקציות המתבססות ועובדות על זמן רצות ועובדות על השניות שעברו מהתאריך 1/1/1970, ביום בו קמה מערכת ההפעלה UNIX. העבודה עצמה מבוססת על TimeStamp – חותמת זמן שמוגדרת בשניות.
הפונקציה הבסיסית ביותר היא ()time. הפונקציה הזו מחזירה מספר ארוך שהוא בעצם מספר השניות שעברו מאז התאריך 1.1.1970 עד לרגע הרצת הפונקציה. נראה קטע קוד:

מה שעשינו בקטע קוד הנ"ל הוא פשוט להדפיס את הערך המוחזר מהפונקציה ()time שהוא למעשה 1463148747, אם אתם תנסו להריץ את קטע הקוד הזה מן הסתם שיוצג לכם מספר גדול יותר כיוון שהרצתם את הפונקציה מאוחר יותר. באמצעות המספר הארוך נוכל להציג את התאריך המדוייק באמצעות הפונקציה ()date שמקבלת 2 ארגומנטים, הראשון (משמאל לימין) הוא התבנית שבה תרצו להציג את התאריך והשני הוא מספר השניות שאתם רוצים להמיר לתאריך – מה שפונקציית ()time מייחצנת – הארגומנט השני לא חובה ובמידה ולא תכניסו אותו PHP תכניס אותו לבד :), דוגמא:

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

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

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

כעת לאחר שהבנו איך לעבוד ולהתנהל מול שעות ותאריכים בשפת PHP, נוכל לעבור הלאה וללמוד על סוגי אופרטורים בשפת PHP.