# תאורית הפעולות

למה יש רק מחלקה אחת `Zend_Date` לניהול ותפעול בתאריכים וזמן במערכת ה Zend Framework?

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

## מידע נוסף

- זמן ב UNIX

  כל התאריכים והזמנים, נשמרים באופן פנימי בצורה אבסולוטית של הזמן הנוכחי, אשר מיוצגים על ידי זמן בשיטת ה UNIX ומביעים את ההבדל בין הזמן הנוכחי או המדובר עליו לבין הזמן של January 1st, 1970 00:00:00 GMT/UTC. זה אפשרי מאחר ו `Zend_Date` הוא לא מוגבל לעבודה רק עם זמנים ב UNIX. כדי לעבוד עם תאריכים גדולים במיוחד אשר יוצאים מכלל הטווח שהוא Fri, 13 Dec 1901 20:45:54 GMT עד Tue, 19 Jan 2038 03:14:07 GMT דורשים את תוסף ה PHP בשם BCMath.

- חלקי תאריך וזמנים ב UNIX

  לכן, הגדרה של תאריך של שלוש שעות יוצג בתור שלוש שעות לאחר January 1st, 1970 00:00:00 GMT/UTC שיהיה בעצם: 0 + 3 * 60 * 60 = 10800.

- פונקציות PHP

  היכן שניתן, `Zend_Date` בדרך כלל משתמשת בפונקציות של PHP כדי לשפר את הביצועים של המערכת.