8.2. ±âº» ¸Þ¼Òµå

ÀÌ Àå¿¡¼­´Â,Zend_Date ÀÇ ±âº»ÀûÀÎ »ç¿ë¹ýÀ», ¿¹¸¦ ±âÃÊ·Î ¼³¸íÇÕ´Ï´Ù.ÀÌ ¸Þ´º¾ó·Î " ÀÏÀÚ" ±×·¸´Ù°í ÇÒ ¶§´Â, Ç×»ó ½Ã°¢µµ Æ÷ÇÔÇϰí ÀÖ´Â °ÍÀ¸·Î ÇÕ´Ï´Ù. À̰ÍÀº, ¸í½ÃÀûÀ¸·Î ¼³¸íÇϰí ÀÖÁö ¾Ê¾Æµµ °°½À´Ï´Ù. ÁöÁ¤Çϰí ÀÖÁö ¾Ê´Â ºÎºÐÀÇ µðÆúÆ®´Â " Á¦·Î" (ÀÌ)°¡ µË´Ï´Ù. Áï, ÀÏÀÚ Á¤º¸¸¦ °¡ÁöÁö ¾Ê°í 12 ½Ã°£À̶ó°í ÇÏ´Â ½Ã°¢ Á¤º¸¸¸À» °¡Áö´Â °ª°ú ÀÏÀÚ Á¤º¸¸¸À» °¡Áö´Â °ªÀ» ´õÇϸé, ±× ÀÏÀÚÀÇ " Á¤¿À" (À»)¸¦ ³ªÅ¸³»°Ô µË´Ï´Ù.

ÀÏÀÚ¸¸À» ÁöÁ¤ÇØ ½Ã°¢ºÎ¸¦ »ý·« Çϸé, ½Ã°¢Àº 00:00:00 (ÀÌ)°¡ µË´Ï´Ù. ¹Ý´ë·Î ½Ã°¢¸¸À» ÁöÁ¤ÇßÀ» °æ¿ì´Â, ÀÏÀÚÀÇ ³»ºÎ Ç¥ÇöÀº 01.01.1970 (À¸)·ÎºÎÅÍÀÇ °æ°úÃʼö¿Í µ¿ÀÏÇØÁý´Ï´Ù. Åë»ó, Àΰ£ÀÌ ½Ã°£À» °è»êÇÏ´Â °æ¿ì´Â ¼­±â Á¦·Î³âÀ» ±âÁØÀ¸·Î ÇÕ´Ï´Ù. ±×·¯³ª, ¸¹Àº ¼ÒÇÁÆ®¿þ¾î´Â 1970 ÇØ¸¦ ±âÁØÀ¸·Î¼­ ½Ã°£À» °è»êÇÕ´Ï´Ù. ±×¸®°í, ¿©±â·ÎºÎÅÍÀÇ °æ°úÃʼö¸¦ ŸÀÓ ½ºÅÆÇÁ·Î¼­ ³ªÅ¸³À´Ï´Ù.

8.2.1. ÇöÀçÀÇ ÀÏÀÚ

Àμö¸¦ ÁöÁ¤ÇÏÁö ¾Ê°í ÀνºÅϽº¸¦ ÀÛ¼ºÇϸé, µðÆúÆ®ÀÇ ·ÎÄÉÀÏ·ÎÀÇ ÇöÀç ½Ã°¢À» ³ªÅ¸³»´Â ¿ÀºêÁ§Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù. PHP ÀÇ time() ÇÔ¼ö·Î, ÀÌ ¿ÀºêÁ§Æ®°¡ »ç¿ëÇÑ´Ù UNIX ŸÀÓ ½ºÅÆÇÁ (À»)¸¦ ÃëµæÇÕ´Ï´Ù.PHP ÀÇ È¯°æ¿¡¼­, µðÆúÆ®ÀÇ Å¸ÀÓ Á¸ ÇÏÁö¸¸ ¿Ã¹Ù¸£°Ô ¼³Á¤µÇ¾î ÀÖ´Â °ÍÀ» È®ÀÎÇØ µÓ½Ã´Ù.

·Ê 8.2. ÇöÀçÀÇ ÀÏÀÚÀÇ ÀÛ¼º


<?php
require_once 'Zend/Date.php';

$date = new Zend_Date();

//  ÇöÀçÀÇ Å¸ÀÓ ½ºÅÆÇÁ¸¦ Ãâ·ÂÇÕ´Ï´Ù
print $date;
?>

8.2.2. Zend_Date ÀÇ »ç¿ë¿¹

Zend_Date ÀÇ ±âº»ÀûÀÎ ¸Þ¼Òµå¸¦ º¸°í °©½Ã´Ù. ´Ù¸¥ ¾ð¾î³ª üÁ¦ÀÇ ÀÏÀÚ ¿ÀºêÁ§Æ®¿¡¼­´Â º°·Î º¸ÀÌÁö ¾Ê´Â ¸Þ¼Òµåµµ ÀÖ½À´Ï´Ù. ÀÌÇÏÀÇ °¢ ¸Þ¼Òµå¿¡ ´ëÇØ¼­, °£´ÜÇÑ ¿¹¸¦ ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

8.2.2.1. ÀÏÀÚÀÇ Ãâ·Â

Zend_Date ¿ÀºêÁ§Æ®ÀÇ ÀÏÀÚ¸¦ Áö¿ªÈ­ µÈ Çü½ÄÀÇ Á¤¼ö ȤÀº ¹®ÀÚ¿­·Î ÃëµæÇÒ ¶§¿¡, get() ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù.ÀÌ ¸Þ¼Òµå¿¡´Â, ´Ù¾çÇÑ ¿É¼ÇÀÌ »ç¿ë °¡´ÉÇÕ´Ï´Ù.ÀÌ·¯ÇÑ ¿É¼Ç¿¡ ´ëÇØ¼­´Â ³ªÁß¿¡ ¼³¸íÇϰڽÀ´Ï´Ù.

·Ê 8.3. get() - ÀÏÀÚÀÇ Ãâ·Â


<?php
require_once 'Zend/Date.php';

$date = new Zend_Date();

//  ÁöÁ¤ÇÑ ÀÏÀÚ¸¦ Ãâ·ÂÇÕ´Ï´Ù
print $date->get();
?>

8.2.2.2. ÀÏÀÚÀÇ ¼³Á¤

set() ¸Þ¼Òµå´Â, ¿ÀºêÁ§Æ®¿¡ °Ý³³µÇ°í ÀÖ´Â ÀÏÀÚ¸¦ º¯°æÇØ, º¯°æ ÈÄÀÇ °ªÀ» ŸÀÓ ½ºÅÆÇÁ ( ¿ÀºêÁ§Æ®°¡ ¾Æ´Õ´Ï´Ù) ±×¸®°í µ¹·ÁÁÝ´Ï´Ù. ÀÌ ¸Þ¼Òµå¿¡¼­µµ ´Ù¾çÇÑ ¿É¼ÇÀÌ »ç¿ë °¡´ÉÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ¿É¼Ç¿¡ ´ëÇØ¼­´Â ³ªÁß¿¡ ¼³¸íÇϰڽÀ´Ï´Ù.

·Ê 8.4. set() - ÀÏÀÚÀÇ ¼³Á¤


<?php
require_once 'Zend/Date.php';

$date = new Zend_Date();

//  »õ·Î¿î ½Ã°¢À» ¼³Á¤ÇÕ´Ï´Ù
$date->set('13:00:00',Zend_Date::TIMES);
print 
$date->get(Zend_Date::W3C);
?>

8.2.2.3. ÀÏÀÚÀÇ °¡°¨»ê

µÎ °³ÀÇ ÀÏÀÚ¸¦ add() ±×¸®°í °¡»êÇÑ´Ù°í ÇÏ´Â °æ¿ì, Åë»óÀº ½ÇÁ¦ÀÇ ÀÏÀÚ µ¥ÀÌÅÍ¿¡ µû¸£´Â °ÍÀ¸·Î ¾Ê´Â ÀÏÀÚ µ¥ÀÌÅÍÀÇ ÀϺΠ("12 ½Ã°£" µî) (À»)¸¦ °¡»êÇÏ°Ô µË´Ï´Ù.¿¹¸¦ µé¾î ÀÌÇÏÀÇ ¿¹ÀÇ °°Àº °ÍÀÔ´Ï´Ù. add() ¹× sub() (Àº)´Â, ¾î´ÀÂÊÀ̳ª set() (¿Í)°ú °°Àº ¿É¼ÇÀ» »ç¿ëÇÕ´Ï´Ù. À̰Ϳ¡ ´ëÇØ¼­´Â ³ªÁß¿¡ ¼³¸íÇϰڽÀ´Ï´Ù.

·Ê 8.5. add() - ÀÏÀÚÀÇ °¡»ê


<?php
require_once 'Zend/Date.php';

$date = new Zend_Date();

// $date  ¿¡ 12  ½Ã°£ °¡»êÇÕ´Ï´Ù
$date->add('12:00:00'Zend_Date::TIMES);

print 
"Date via get() = "$date->get(Zend_Date::W3C), "n";

//  ¸ÅÁ÷ ¸Þ¼Òµå __toString()  (À¸)·ÎºÎÅÍ,Zend_Date  ÀÇ toString()  (À»)¸¦ ÄÝ ÇÕ´Ï´Ù
print "Date via toString() = "$date"n";
?>

8.2.2.4. ÀÏÀÚÀÇ ºñ±³

Zend_Date ÀÇ ±âº» ¸Þ¼Òµå±ºÀº ¸ðµÎ, ¿ÀºêÁ§Æ®¿¡ Æ÷ÇԵǴ ÀÏÀÚ µ¥ÀÌÅÍ Àüü¿¡ ´ëÇØ¼­ Á¶ÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç, ÀÏÀÚÀÇ ÀϺο¡ ´ëÇØ¼­ Á¶ÀÛÇÑ´Ù ( ÀÏÀÚÀÇ " ºÐ" ÀÇ ºÎºÐ¸¸Å­À» ÀÖ´Â °ª°ú ºñ±³ÇÏ´Â µî) Àϵµ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ÇöÀç ½Ã°¢ÀÇ " ºÐ" ÀÇ ºÎºÐÀ» ÁöÁ¤ÇÑ °ª°ú ºñ±³ÇÏ·Á¸é compare() (À»)¸¦ »ç¿ëÇÕ´Ï´Ù.ÀÌÇÏ¿¡ ¿¹¸¦ ³ªÅ¸³À´Ï´Ù.

·Ê 8.6. compare() - ÀÏÀÚÀÇ ºñ±³


<?php
require_once 'Zend/Date.php';

$date = new Zend_Date();

//  µÎ °³ÀÇ ½Ã°¢À» ºñ±³ÇÕ´Ï´Ù
if ($date->compare(10Zend_Date::MINUTE) == -1) {
    print 
"This hour is less than 10 minutes old";
} else {
    print 
"This hour is at least 10 minutes old";
}
?>

´Ü¼øÇÏ°Ô µ¿ÀÏÇÑÁö ¾î¶²Áö¸¦ ºñ±³ÇÏ·Á¸é equals() (À»)¸¦ »ç¿ëÇÕ´Ï´Ù.À̰ÍÀº boolean °ªÀ» µ¹·ÁÁÝ´Ï´Ù.

·Ê 8.7. equals() - ÀÏÀÚ È¤Àº ±× ÀϺÎÀÇ µ¿Àϼº


<?php
require_once 'Zend/Date.php';

$date = new Zend_Date();

//  µÎ °³ÀÇ ÀÏÀÚ¸¦ ºñ±³ÇÕ´Ï´Ù
if ($date->equals(10Zend_Date::HOUR)) {
    print 
" 10½ÃÀÔ´Ï´Ù.ÀÏÀ» ½ÃÀÛÇÏ´Â ½Ã°£ÀÔ´Ï´Ù.";
} else {
    print 
" 10½Ã°¡ ¾Æ´Õ´Ï´Ù.Á» ´õ ÀÚ°í ÀÖÀ¾½Ã´Ù.";
}
?>