º»¹®¼´Â PHP3 ÀÇ ´ÙÀ½¹öÀü¿¡ ´ëÇØ °³¹ßÀÚÀÎ Zeev Suraski °¡ ¾´ ±ÛÀ̸ç http://www.phpbuilder.com/columns/zeev19990518.php3 ¿¡¼ ¿ø¹®À» º¸½Ç ¼ö ÀÖ½À´Ï´Ù. PHP 4.0 »ìÆìº¸±â ±Û¾´ÀÌ : Zeev Suraski ¿Å±äÀÌ : Á¤ÁøÈ£ (loveme@ditco.com) ¾Æ¸¶µµ ¸¹Àº ºÐµéÀÌ ÃÖ±Ù ¹ßÇ¥µÈ PHP ÀÇ Â÷±â¹öÀü¿¡ °ü½ÉÀ» °¡Áö°í ÀÖÀ¸¸®¶ó »ý°¢µË´Ï´Ù. ¶ÇÇÑ Zend ¶ó´Â ´Ü¾î¸¦ µé¾î º»ÀûÀÌ ÀÖÀ» °Ì´Ï´Ù. ÀÌ ±ÛÀº PHPÀÇ Â÷±â¹öÀü PHP4.0¿¡ ´ëÇØ À̾߱â ÇÏ·Á ÇÕ´Ï´Ù. ±×·±µ¥ µµ´ëü Zend °¡ ¹¹Áö¿ä? Àû¾îµµ PHP¸¦ ÁÁ¾ÆÇÏ´Â »ç¶÷µé »çÀÌ¿¡¼´Â ÀÌ Áú¹®¿¡ ´ëÇÑ ´äº¯Àº ¸íÈ®ÇÏ´Ù°í »ý°¢ÇÏÁö¸¸ Çê¼Ò¹®°ú À߸øµÈ Á¤º¸¸¦ ¾Ë°í ÀÖ´Â ºÐµéÀ» À§ÇØ ´äº¯À» µå·Á¾ß ÇÒ °Í °°±º¿ä. Á¤È®È÷ Zend ´Â ¼ÒÇÁÆ®¿þ¾îÀÇ ÇÑ ºÎºÐÀÔ´Ï´Ù(MSÀÇ Ç¥ÇöÀ» ºô¸®ÀÚ¸é ÄÄÆ÷³ÍÆ®ÁÒ). ´Ù½Ã ¸»ÇØ ½ºÅ©¸³Æ®¾ð¾îÀÇ ÇØ¼® ¿£ÁøÀÔ´Ï´Ù. ¹®ÀÚ ±×´ë·Î ÇØ¼®Çϸé PHP¿Í ¾Æ¹« »ó°üÀÌ ¾ø¾î º¸ÀÔ´Ï´Ù. »ç½Ç´ë·Î ¸»Çϸé PHP½ºÅ©¸³Æ®¸¦ ÇØ¼®ÇÒ ¼ö ÀÖ´Â »õ·Î¿î ¿£ÁøÀ» ¸¸µé´Ù º¸´Ï PHP¿Í ¿ÏÀüÈ÷ ȣȯÀÌ °¡´ÉÇÏ°Ô µÈ °ÍÀÔ´Ï´Ù. Zend ÀÌÀüÀÇ ¹öÀüÀº 3°¡Áö °¡ ÀÖ½À´Ï´Ù. Ãʱâ 2°¡Áö ¹öÀüÀÇ PHP/FI´Â Rasmus Lerdorf¿¡ ÀÇÇØ ¸¸µé¾î Á³½À´Ï´Ù.±×¸®°í 1997³â ¸»¿¡ Andi Gutmans ¿Í Á¦°¡(Zeev Suraski ) ¿ÏÀüÈ÷ »õ·Î¿î ±â¹ÝÀÇ ¿£ÁøÀ» ¸¸µé¾ú´Âµ¥¿ä ±×°ÍÀÌ PHP3 ÀÇ ÇÙ½ÉÀÌ µÇ¾ú½À´Ï´Ù. ±× »õ·Î¿î ¿£ÁøÀº ¼º´É°ú ¾ÈÁ¤¼ºÀÌ ¶Ù¾î³µ°í °·ÂÇϰí Àϰü¼º ÀÖ¾ú½À´Ï´Ù. °Ô´Ù°¡ È®À强ÀÌ Ç³ºÎÇÑ API¸¦ Á¦°ø Çß±¸¿ä. ¸¹Àº Á¶¾ðµé·Î ÀÌ ¿£ÁøÀº Á¡Á¡ ´õ °·ÂÇØ Áö°Ô µÇ¾ú½À´Ï´Ù. PHP3¿¡ ¸¹Àº »õ·Î¿î ±â´ÉÀÌ Æ÷ÇÔµÇ°í ¾µ¸¸ÇÏ´Ù´Â »ç½ÇÀÌ ¾Ë·ÁÁöÀÚ ¸¹Àº °³¹ßÀÚµéÀÌ °³¹ß ȯ°æÀ¸·Î »ç¿ëÇÏ¸é¼ Á¡Á¡ ´õ º¹ÀâÇÑ ¼Ò½ºÄڵ带 ¸¸µé±â ½ÃÀÛÇß½À´Ï´Ù. »ç½Ç´ë·Î °í¹éÇϸé PHP3 ´Â ¾ÖÃÊ¿¡ º¹ÀâÇÑ ½ºÅ©¸³Æ®¸¦ µ¹¸®±â À§ÇØ ¸¸µé¾îÁø °ÍÀÌ ¾Æ´Õ´Ï´Ù. Áï ½ºÅ©¸³Æ®°¡ º¹ÀâÇØ Áú¼ö·Ï È¿À²¼ºÀÌ ½É°¢ÇÏ°Ô ¶³¾îÁø´Ù´Â °ÍÀ» ¾Ë°Ô µÇ¾úÁÒ. ÀÌ »ç½ÇÀ» ±ú ´Ý°í Andi Gutmans ¿Í Àú´Â º¹ÀâÇÑ ¼Ò½ºÄÚµå ½ÇÇà¿¡¼ ¶Ù¾î³ ¼º´ÉÀ» ¹ßÈÖÇÏ°í °£°áÇÑ Äڵ忡¼µµ ¼º´ÉÀúÇϰ¡ ¾ø´Â ¿ÏÀüÈ÷ »õ·Î¿î ¿£ÁøÀ» ¸¸µé°Ô µÇ¾úÁÒ. ±×°ÍÀÌ ¹Ù·Î zend. ÀÔ´Ï´Ù Zend ´Â Zeev Suraski ¿Í Andi Gutmans ÀÇ ¾àÀÚÀÔ´Ï´Ù PHP/FI2¿¡¼ PHP3·ÎÀÇ ¹ßÀü°ú´Â ´Þ¸®(À̶§´Â ¿ÏÀüÈ÷ »õ·Î¿î ¿£ÁøÀ̾úÁÒ!) Zend ´Â ¿ÏÀüÈ÷ PHP3 ¿£Áø°ú ºÐ¸®µÇ¾î ÀÖÁö´Â ¾Ê½À´Ï´Ù. Zend ´Â µ¶¸³ÀûÀÎ ¶óÀ̺귯¸®·Î µðÀÚÀÎ µÇ¾î ÀÖ¾î PHP ÀÌ¿ÜÀÇ ÇÁ·Î±×·¥¿¡¼µµ Àç»ç¿ë µÉ ¼ö ÀÖ½À´Ï´Ù. ÇöÀç Zend¸¦ ÀÌ¿ë ºü¸£°í °·ÂÇÑ ¹«·á DB MySQLÀÇ stored procedure ¾ð¾î¸¦ ¸¸µé·Á Çϰí ÀÖ½À´Ï´Ù. ¶ÇÇÑ Zend¸¦ °³¹ß Ç÷§Æû¿¡ ¹«°üÇÒ »Ó¸¸ ¾Æ´Ï¶ó ´Ù¸¥ ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼µµ »ç¿ë °¡´ÉÇϵµ·Ï ¸¸µé·Á°í ÇÕ´Ï´Ù. ¹°·Ð »ó´çÇÑ ³ë·Â°ú ½Ã°£ÀÌ µé°ÚÁö¸¸¿ä. ¾î¶»°Ô Zend °¡ PHP 4.0¿¡ Âü¿©ÇÏ°Ô µÇ¾ú³ª? PHP3 ¿£Áø°ú ¸¶Âù°¡Áö·Î Zend ¿ª½Ã ÀÌÀü ¹öÀüÀÇ ¸î¸î ¹®Á¦Á¡(¼º´ÉÀúÇÏ)À» ÇØ°æÇϱâ À§ÇØ °³¹ßµÇ¾ú½À´Ï´Ù. ¿ì¼± °¡Àå Áß¿äÇÑ Á¡Àº Zend ´Â PHP3 ¿Í ¿ÏÀüÈ÷ ȣȯµÉ »Ó¸¸ ¾Æ´Ï¶ó º¸´Ù ÃÖÀûÈ µÇ¾î ÀÖ½À´Ï´Ù. Zend ¿£ÁøÀº ÀϹÝÀûÀ¸·Î PHP3 º¸´Ù 3~200 ¹è Á¤µµ ºü¸£°Ô ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÕ´Ï´Ù. ¿©·¯ºÐÀÌ ÇöÀç °¡Áø ¼Ò½º¸¦ ÀüÇô ¼Õ´ëÁö ¾Ê°í ´ÜÁö »õ·Î¿î ¹öÀüÀÇ PHP3¸¦ ¼³Ä¡ ÇÏ´Â °Í ¸¸À¸·Î ÀÌ·± ¼º´ÉÇâ»óÀ» ±â´ë ÇÒ ¼ö ÀÖ´Ù´Â °É ÁÖ¸ñÇϼ¼¿ä(Á¤¸» ½Å³ª´Â±º¿ä).ÀÌ·± ÀåÁ¡Àº ¹«ÁöÇÏ°Ô »ç¶÷µéÀÌ ¸¹ÀÌ Ã£´Â »çÀÌÆ®¿¡¼ ÁÖ¸ñÇÒ ¸¸ÇÕ´Ï´Ù. ¶Ç´Â º¹ÀâÇÑ ½ºÅ©¸³Æ®¸¦ µ¹·Á¾ß ÇÏ´Â »çÀÌÆ® ¿ª½Ã ¸¶Âù°¡ÁöÀÔ´Ï´Ù. ¶ÇÇÑ º°µµ·Î ÆÇ¸ÅÇÏ´Â PLUG-INÀ» »ç¿ëÇÏ¸é °¡´ÉÇÑ ÃÖ°íÀÇ ¼º´ÉÀ» ³¾ ¼öµµ ÀÖ½À´Ï´Ù. zend ´Â foreach, class::method() calls°ú °°Àº »õ·Î¿î ¹®¹ý°ú PHP3¿¡¼ ºÒÆíÇß´ø Á¡À» ¼öÁ¤Çß½À´Ï´Ù. PHP ¿Í Zend ÀÇ °ü°è¸¦ º¸´Ù ½±°Ô ÀÌÇØÇϱâ À§ÇØ ´ÙÀ½ ±×¸²À» Âü°íÇϽñ⠹ٶø´Ï´Ù. ¶Ç ¹¹°¡ ÀÖ³ª¿ä? PHP4 ´Â ´ÜÁö ¼º´ÉÇâ»ó°ú ½Å·Ú¼º¸¸ÀÌ Çâ»óµÈ °ÍÀÌ ¾Æ´Õ´Ï´Ù. »ó´çÈ÷ ¸¹Àº °³¼±ÀÌ ÀÌ·ç¾î Á³Áö¿ä. PHP ¸ðµâÀº ÀÌÀü ¹öÀü º¸´Ù ´õ ¸¹ÀÌ ¸ðµâÈ µÇ¾ú½À´Ï´Ù. ¿©·¯ºÐÀÌ PHP ¹èÆ÷ÆÇ¿¡ µû¶ó¿À´Â ¸ðµç ¸ðµâÀ» Æ÷ÇÔ½Ãų °èȹÀ» °¡Áö°í ÀÖÀ»Áö ¸ô¶óµµ °¢°¢ÀÇ ¸ðµâÀº ÇÊ¿ä ½Ã¿¡¸¸ µ¿ÀûÀ¸·Î ÀûÀç°¡ µÇµµ·Ï ¸¸µé¾î Á³½À´Ï´Ù. ÀÌ¹Ì PHP3 ¹öÀü¿¡ ÀÌ ±â´ÉÀÌ Æ÷ÇԵǾî ÀÖ¾úÁö¸¸ Ç¥ÁØÀÌ ºÎÁ·Çß°í µ¿ÀûÀÎ ¸ðµâÀÌ ½±°Ô »ý¼ºµÇµµ·Ï ¸¸µå´Â °Ô ½±Áö ¾Ê¾Ò½À´Ï´Ù. ±×·¯³ª ÇöÀç·Î¼ ÀÌ ±â´ÉÀº Stig Bakken.¿¡ ÀÇÇØ °ÅÀÇ ¿Ï¼º µÇ¾ú½À´Ï´Ù. 4.0¹öÀü¿¡¼ °ÈµÈ ¶Ç ´Ù¸¥ ±â´ÉÁßÀÇ Çϳª´Â À¥¼¹ö ÀÎÅÍÆäÀ̽ºÀÔ´Ï´Ù. 3.0¿¡¼´Â 3°¡Áö ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇߴµ¥ Ç¥ÁØ CGI, ¾ÆÆÄÄ¡ , fhttpd µîÀÔ´Ï´Ù. ¾Æ½Ã´Ù½ÃÇÇ ¾ÆÆÄÄ¡´Â °¡Àå ¶Ù¾î³ À¥¼¹öÀÔ´Ï´Ù. »õ·Î¿î ¹öÀü¿¡¼´Â ISAPI(MS IIS¸¦ À§ÇÑ)¿Í NSAPI(³×Æ®½ºÄÉÀÌÇÁ ¼¹öµéÀ» À§ÇÑ)¸¦ Áö¿øÇÏ°Ô µÇ¾ú½À´Ï´Ù. ¶ÇÇÑ COM/DCOM °ú °°Àº ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ ASP¸¦ ÅëÇØ ÇÏ´ø ÀÛ¾÷À» PHP4.0¿¡¼µµ ÇÒ ¼ö ÀÖ°Ô µÇ¾ú½À´Ï´Ù. ¿ä¾àÇϸé PHP4.0Àº 3.0¹öÀüº¸´Ù ÈξÀ ºü¸£°í ¾ÈÁ¤ÀûÀÏ »Ó ¾Æ´Ï¶ó Á»´õ ¸ðµâÈ µÇ¾î À̽ļºÀÌ ¶Ù¾î³ª¸ç ¸¹Àº ±â´ÉÀÌ Ãß°¡ µÇ¾ú½À´Ï´Ù. ¾ÕÀ¸·ÎÀÇ °èȹ PHP4.0 Àº ÃÖ±Ù ÁÖ¿ä±â´ÉÀÌ °áÁ¤µÇ¾ú°í ¾ÈÁ¤È ´Ü°è¿¡ ÀÖ½À´Ï´Ù. ÇöÀç ³»ºÎÀûÀ¸·Î º£Å¸ Å×½ºÆ® ÁßÀ̸ç ÀÌ ¹öÀüÀÌ ¹Ù·Î PHP4.0 ÀÇ ±Ù°£À» ÀÌ·ç°Ô µË´Ï´Ù. ÀüÇô ¿¹»óÄ¡ ¸øÇÑ »õ·Î¿î ¹®Á¦°¡ »ý±âÁö ¾Ê´Â´Ù¸é 6¿ù¸»À̳ª 7¿ùÃÊ¿¡ ±× ¸ð½ÀÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.