Á¦26 Àå Zend_Uri

¸ñÂ÷

26.1. Zend_Uri
26.1.1. °³¿ä
26.1.2. »õ·Ó´Ù URI ÀÇ ÀÛ¼º
26.1.3. ±âÁ¸ÀÇ URI ÀÇ Á¶ÀÛ
26.1.4. URI ÀÇ °ËÁõ
26.1.5. °øÅëÀÇ ÀνºÅϽº ¸Þ¼Òµå

26.1. Zend_Uri

26.1.1. °³¿ä

Zend_Uri (Àº)´Â, Uniform Resource Identifiers (URIs) ÀÇ Á¶ÀÛ ¹× °ËÁõÀ» ÇàÇϱâ À§ÇÑ ÄÄÆÛ³ÍÆ®ÀÔ´Ï´Ù. Zend_Uri ÀÇ º»·¡ÀÇ ¸ñÀûÀº Zend_Http_Client (¿Í)°ú °°Àº ´Ù¸¥ ÄÄÆÛ³ÍÆ®¸¦ Áö¿øÇÏ´Â °ÍÀÔ´Ï´Ù¸¸, ´Üü·Î »ç¿ëÇØµµ Æí¸®ÇÕ´Ï´Ù.

URI ÀÇ Ã³À½Àº Ç×»ó ½ºÅ´À¸·ÎºÎÅÍ ½ÃÀ۵Ǿî, ±× ÈÄ¿¡ ÄÚ·ÐÀÌ °è¼Ó µË´Ï´Ù. ½ºÅ´¿¡´Â ´Ù¾çÇÑ °ÍÀÌ ÀÖ½À´Ï´Ù. Zend_Uri Ŭ·¡½º´Â, °¢ ½ºÅ´¿¡ ƯȭÇÑ ÀÚ½ÅÀÇ ¼­ºê Ŭ·¡½º¸¦ µ¹·ÁÁÖ´Â ÆÑÅ丮 ¸Þ¼Òµå¸¦ Á¦°øÇϰí ÀÖ½À´Ï´Ù. ¼­ºê Ŭ·¡½ºÀÇ À̸§Àº Zend_Uri_<scheme> µÇ¾î,<scheme> ÀÇ ºÎºÐ¿¡´Â ½ºÅ´¸íÀÇ ÃÖÃÊÀÇ ¹®ÀÚ¸¸À» ´ë¹®ÀÚ·Î ÇÑ °ÍÀÌ µé¾î¸ÂÀ¾´Ï´Ù. ÀÌ ±ÔÄ¢¿¡´Â Çϳª ¿¹¿Ü°¡ ÀÖ¾î,HTTPS ½ºÅ´¿¡ ´ëÇØ¼­´Â Zend_Uri_Http ±×¸®°í ´Ù·ç¾îÁý´Ï´Ù.

26.1.2. »õ·Ó´Ù URI ÀÇ ÀÛ¼º

½ºÅ´¸¸À» Zend_Uri::factory() ¿¡ °Ç³×ÁÖ¸é, Zend_Uri (Àº)´Â »õ·Ó´Ù URI (À»)¸¦ Á¦·Î·ÎºÎÅÍ ÀÛ¼ºÇÕ´Ï´Ù.

·Ê 26.1. Zend_Uri::factory() ¿¡ ÀÇÇÑ »õ·Ó´Ù URI ÀÇ ÀÛ¼º


<?php

require_once 'Zend/Uri.php';

//  ¾Æ¹«°Íµµ ¾ø´Â °÷À¸·ÎºÎÅÍ »õ·Ó´Ù URI  (À»)¸¦ ÀÛ¼ºÇÏ·Á¸é , ½ºÅ´¸¸À» °Ç³×ÁÝ´Ï´Ù
$uri Zend_Uri::factory('http');

// $uri  ÇÏ Zend_Uri_Http  ÀÇ ÀνºÅϽº°¡ µË´Ï´Ù
 
?>

»õ·Ó´Ù URI (À»)¸¦ ÀÛ¼ºÇÏ·Á¸é , ½ºÅ´¸¸À» Zend_Uri::factory() ¿¡ °Ç³×ÁÝ´Ï´Ù [11] . ¼­Æ÷Æ®Çϰí ÀÖÁö ¾Ê´Â ½ºÅ´ÀÌ °Ç³×¹Þ¾ÒÀ» °æ¿ì´Â, Zend_Uri_Exception ÇÏÁö¸¸ ½½·Î¿ì µË´Ï´Ù.

°Ç³×¹ÞÀº ½ºÅ´ ȤÀº URI (À»)¸¦ ¼­Æ÷Æ®Çϰí ÀÖ´Â °æ¿ì´Â, Zend_Uri::factory() (Àº)´Â ÀÚ±â ÀÚ½ÅÀÇ ¼­ºê Ŭ·¡½º¸¦ µ¹·ÁÁÝ´Ï´Ù. À̰ÍÀº, ÁöÁ¤ÇÑ ½ºÅ´¿¡ ƯȭÇÑ °ÍÀÌ µË´Ï´Ù.

26.1.3. ±âÁ¸ÀÇ URI ÀÇ Á¶ÀÛ

±âÁ¸ÀÇ URI (À»)¸¦ Á¶ÀÛÇÏ·Á¸é , ¿ÏÀüÇÑ URI (À»)¸¦ Zend_Uri::factory() ¿¡ °Ç³×ÁÝ´Ï´Ù.

·Ê 26.2. Zend_Uri::factory() ¿¡ ÀÇÇÑ ±âÁ¸ÀÇ URI ÀÇ Á¶ÀÛ


<?php

require_once 'Zend/Uri.php';

//  ±âÁ¸ÀÇ URI  (À»)¸¦ Á¶ÀÛÇÏ·Á¸é , ±×°ÍÀ» °Ç³×ÁÝ´Ï´Ù
$uri Zend_Uri::factory('http://www.zend.com');

// $uri  ÇÏ Zend_Uri_Http  ÀÇ ÀνºÅϽºÀÔ´Ï´Ù
 
?>

ÀÌ ¶§,URI ÀÇ ÆÛ½º¿Í °ËÁõÀ» ÇÕ´Ï´Ù. ¸¸¾à Ÿ´çÇÑ Çü½ÄÀÌ ¾Æ´Ï¾ú´ø °æ¿ì´Â, °Å±â¼­ Zend_Uri_Exception ÇÏÁö¸¸ ½½·Î¿ì µË´Ï´Ù.±× ÀÌ¿ÜÀÇ °æ¿ì´Â Zend_Uri::factory() (Àº)´Â ÀÚ±â ÀÚ½ÅÀÇ ¼­ºê Ŭ·¡½º¸¦ µ¹·ÁÁÝ´Ï´Ù. À̰ÍÀº, Á¶ÀÛÇÏ´Â ½ºÅ´¿¡ ƯȭÇÑ °ÍÀÌ µË´Ï´Ù.

26.1.4. URI ÀÇ °ËÁõ

Zend_Uri::check() ÇÔ¼ö¸¦ »ç¿ëÇϸé, ±âÁ¸ÀÇ URI ÀÇ °ËÁõ¸¸À» ½Ç½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

·Ê 26.3. Zend_Uri::check() ¿¡ ÀÇÇÑ´Ù URI ÀÇ °ËÁõ


<?php

require_once 'Zend/Uri.php';

//  ÁöÁ¤Çß´Ù URI  ÇÏÁö¸¸ ¿Ã¹Ù¸¥ Çü½ÄÀÎÁö ¾î¶²Áö¸¦ Á¶»çÇÕ´Ï´Ù
$valid Zend_Uri::check('http://uri.in.question');

// $valid  (Àº)´Â, ¿Ã¹Ù¸£¸é TRUE , ±×·¸Áö ¾ÊÀ¸¸é FALSE  µË´Ï´Ù
 
?>

Zend_Uri::check() ÇÏ boolean °ªÀ» µ¹·ÁÁÝ´Ï´Ù. À̰ÍÀº Zend_Uri::factory() (À»)¸¦ »ç¿ëÇØ ¿¹¿Ü¸¦ ó¸®ÇÏ´Â °Íº¸´Ùµµ Æí¸®ÇÕ´Ï´Ù.

26.1.5. °øÅëÀÇ ÀνºÅϽº ¸Þ¼Òµå

¸ðµç Zend_Uri ÀÇ ¼­ºê Ŭ·¡½º ( ·Ê Zend_Uri_Http) ÀÇ ÀνºÅϽº¿¡´Â, URI Á¶ÀÛÀ» À§Çؼ­ Æí¸®ÇÑ ÀνºÅϽº ¸Þ¼Òµå°¡ ¸î°³Àΰ¡ Á¦°øµÇ°í ÀÖ½À´Ï´Ù.

26.1.5.1. URI ÀÇ ½ºÅ´ÀÇ Ãëµæ

URI ÀÇ ½ºÅ´À̶õ,URI ±×¸®°í ÄÞ¸¶ÀÇ ¾Õ¿¡ ¿À´Â ºÎºÐÀÔ´Ï´Ù. ¿¹¸¦ µé¾î http://www.zend.com ÀÇ ½ºÅ´Àº http µË´Ï´Ù.

·Ê 26.4. Zend_Uri_* ¿ÀºêÁ§Æ®·ÎºÎÅÍÀÇ ½ºÅ´ÀÇ Ãëµæ


<?php

require_once 'Zend/Uri.php';

$uri Zend_Uri::factory('http://www.zend.com');

$scheme $uri->getScheme();  // "http"
 
?>

ÀνºÅϽº ¸Þ¼Òµå getScheme() (Àº)´Â, URI ¿ÀºêÁ§Æ®·ÎºÎÅÍ ½ºÅ´ÀÇ ºÎºÐ¸¸À» µ¹·ÁÁÝ´Ï´Ù.

26.1.5.2. URI ÀüüÀÇ Ãëµæ

·Ê 26.5. Zend_Uri_* ¿ÀºêÁ§Æ®·ÎºÎÅÍÀÇ URI ÀüüÀÇ Ãëµæ


<?php

require_once 'Zend/Uri.php';

$uri Zend_Uri::factory('http://www.zend.com');

echo 
$uri->getUri();  // "http://www.zend.com"
 
?>

getUri() ¸Þ¼Òµå´Â,URI Àüü¸¦ ¹®ÀÚ¿­·Î¼­ µ¹·ÁÁÝ´Ï´Ù.

26.1.5.3. URI ÀÇ °ËÁõ

Zend_Uri::factory() (Àº)´Â °Ç³×¹Þ¾Ò´Ù URI (À»)¸¦ Ç×»ó °ËÁõÇϰí ÀÖ¾î, °Ç³×¹Þ¾Ò´Ù URI ÇÏÁö¸¸ ¹«È¿ÀÎ °æ¿ì´Â Zend_Uri ÀÇ ¼­ºê Ŭ·¡½ºÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇÏÁö ¾Ê½À´Ï´Ù.±×·¯³ª, ÀÏ´Ü Zend_Uri ÀÇ ¼­ºê Ŭ·¡½ºÀÇ ÀνºÅϽº¸¦ ( ½Å±Ô¿¡, ȤÀº ±âÁ¸ÀÇ °ÍÀ¸·ÎºÎÅÍ) ÀÛ¼ºÇØ, ±×°ÍÀ» Á¶ÀÛÇÑ ´ÙÀ½¿¡µµ ¾ÆÁ÷ Ÿ´çÇÑ Çü½ÄÀÏÁö¸¦ Á¶»çÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

·Ê 26.6. Zend_Uri_* ¿ÀºêÁ§Æ®ÀÇ °ËÁõ


<?php

require_once 'Zend/Uri.php';

$uri Zend_Uri::factory('http://www.zend.com');

$isValid $uri->valid();  // TRUE
 
?>

ÀνºÅϽº ¸Þ¼Òµå valid() ¿¡ ÀÇÇØ, URI ¿ÀºêÁ§Æ®°¡ Ÿ´çÇÑ °ÍÀÎÁö ¾î¶²Áö¸¦ Á¶»çÇÒ ¼ö ÀÖ½À´Ï´Ù.



[11] Çö½ÃÁ¡¿¡¼­´Â, Zend_Uri ÇÏÁö¸¸ ¼­Æ÷Æ®Çϰí ÀÖ´Â ½ºÅ´Àº HTTP ¹× HTTPS »ÓÀÔ´Ï´Ù.