¸ñÂ÷
Zend_Uri
(Àº)´Â, Uniform
Resource Identifiers (URIs) ÀÇ Á¶ÀÛ ¹× °ËÁõÀ» ÇàÇϱâ À§ÇÑ ÄÄÆÛ³ÍÆ®ÀÔ´Ï´Ù. Zend_Uri
ÀÇ
º»·¡ÀÇ ¸ñÀûÀº Zend_Http_Client
(¿Í)°ú °°Àº ´Ù¸¥ ÄÄÆÛ³ÍÆ®¸¦ Áö¿øÇÏ´Â
°ÍÀÔ´Ï´Ù¸¸, ´Üü·Î »ç¿ëÇØµµ Æí¸®ÇÕ´Ï´Ù.
URI ÀÇ Ã³À½Àº Ç×»ó ½ºÅ´À¸·ÎºÎÅÍ ½ÃÀ۵Ǿî, ±× ÈÄ¿¡ ÄÚ·ÐÀÌ °è¼Ó µË´Ï´Ù. ½ºÅ´¿¡´Â ´Ù¾çÇÑ °ÍÀÌ ÀÖ½À´Ï´Ù. Zend_Uri
Ŭ·¡½º´Â,
°¢ ½ºÅ´¿¡ ƯÈÇÑ ÀÚ½ÅÀÇ ¼ºê Ŭ·¡½º¸¦ µ¹·ÁÁÖ´Â ÆÑÅ丮 ¸Þ¼Òµå¸¦ Á¦°øÇϰí ÀÖ½À´Ï´Ù. ¼ºê Ŭ·¡½ºÀÇ À̸§Àº Zend_Uri_<scheme>
µÇ¾î,<scheme>
ÀÇ
ºÎºÐ¿¡´Â ½ºÅ´¸íÀÇ ÃÖÃÊÀÇ ¹®ÀÚ¸¸À» ´ë¹®ÀÚ·Î ÇÑ °ÍÀÌ µé¾î¸ÂÀ¾´Ï´Ù. ÀÌ ±ÔÄ¢¿¡´Â Çϳª ¿¹¿Ü°¡ ÀÖ¾î,HTTPS ½ºÅ´¿¡ ´ëÇØ¼´Â Zend_Uri_Http
±×¸®°í
´Ù·ç¾îÁý´Ï´Ù.
½ºÅ´¸¸À» 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()
(Àº)´Â
ÀÚ±â ÀÚ½ÅÀÇ ¼ºê Ŭ·¡½º¸¦ µ¹·ÁÁÝ´Ï´Ù. À̰ÍÀº, ÁöÁ¤ÇÑ ½ºÅ´¿¡ ƯÈÇÑ °ÍÀÌ µË´Ï´Ù.
±âÁ¸ÀÇ 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()
(Àº)´Â ÀÚ±â ÀÚ½ÅÀÇ
¼ºê Ŭ·¡½º¸¦ µ¹·ÁÁÝ´Ï´Ù. À̰ÍÀº, Á¶ÀÛÇÏ´Â ½ºÅ´¿¡ ƯÈÇÑ °ÍÀÌ µË´Ï´Ù.
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()
(À»)¸¦
»ç¿ëÇØ ¿¹¿Ü¸¦ ó¸®ÇÏ´Â °Íº¸´Ùµµ Æí¸®ÇÕ´Ï´Ù.
¸ðµç Zend_Uri
ÀÇ ¼ºê Ŭ·¡½º ( ·Ê Zend_Uri_Http
)
ÀÇ ÀνºÅϽº¿¡´Â, 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.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 Àüü¸¦ ¹®ÀÚ¿·Î¼ µ¹·ÁÁÝ´Ï´Ù.
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 ¿ÀºêÁ§Æ®°¡ Ÿ´çÇÑ °ÍÀÎÁö ¾î¶²Áö¸¦
Á¶»çÇÒ ¼ö ÀÖ½À´Ï´Ù.