Class
  • Tip&Tech
[¹®¹ý] µ¿ÀûÀ¸·Î Ŭ·¡½º »ý¼ºÀÚ È£Ãâ (PHP5¿ë)
±Û¾´ÀÌ ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§MC½É»õ ³¯ Â¥ 09-08-18 20:08 Á¶ ȸ 5347
°£ÆíURL http://www.phpschool.com/link/tipntech/69286 º¹»ç

SyntaxHighlight·Î º¸±â

Á¨µå ÇÁ·¹ÀÓ¿öÅ©¸¦ È®ÀåÇϸ鼭,
½Ì±ÛÅæ Ŭ·¡½º¸¦ ±¸ÇöÇÏ´Â µµÁß ¸·Çû´ø°Ô..


Ŭ·¡½º¿¡ µû¶ó¼­ »ý¼ºÀÚ¿¡¼­ arguments °¡ 0~n°³°¡ µÉ ¼ö ÀÖ´Ù´Â °Å´õ±º¿ä..
ÀÌ arguments¸¦ 0°³³ª 1°³ µîÀ¸·Î °íÁ¤ÇÒ ¼ö ¾ø°í, Ŭ·¡½º ¼º°Ý¿¡ µû¶ó¼­ arguments ¼ö´Â
´ç¿¬È÷ Â÷À̰¡ ÀÖÀ» ¼ö ¹Û¿¡ ¾ø½À´Ï´Ù.

public static function getInstance($name){
$instance = self::_getInstance($name);

if(isset($instance)) return $instance;
else{
$args = func_get_args();
array_shift($args);

$instance = @new $className($args[0], $args[1], $args[2], $args[3], $args[4], $args[5]);
self::$instances[$name] = $instance;
}
return $instance;
}

À§ÀÇ ºÓÀº»ö ºÎºÐ°ú °°ÀÌ
À§¸¦ ó¸®Çϱâ À§Çؼ­ arguments¸¦ ÀÓÀÇ ÇÒ´ç Çϰí @·Î ¿¡·¯ Ãâ·ÂÀ» ¸·¾Ò½À´Ï´Ù.




¾î·µç ±¸ÇöÀº ÇßÀ¸³ª ±×¸® ±ò²ûÇÑ ÄÚµå´Â ¾Æ´ÏÁÒ.
ÀÌ·¡Àú·¡ Á» ã¾Æº¸´Ï

call_user_method_array ( string $method_name , object &$obj , array $params )
call_user_func_array(array($obj, $method_name), $params);
¶ó´Â ÇÔ¼öµéÀÌ ÀÖ½À´Ï´Ù¸¸,
À§ÀÇ arguments Á¤º¸¸¦ º¸½Ã¸é ¾Æ½Ã´Ù ½ÃÇÇ, ÀÌ¹Ì instanceµÈ °´Ã¼ÀÇ ÇÔ¼ö¸¦ È£Ãâ ÇÏ´Â ¿ëµµ·Î º¸ÀÔ´Ï´Ù.
php4ÀÇ °æ¿ì¿¡´Â call_user_func_array À̰ɷΠ±¸Çö µÇ¾ú´ø°É·Î ±â¾ï ÇÕ´Ï´Ù¸¸,
PHP5¿¡¼­´Â »ý¼ºÀÚ arguments ¸¸Å­ ¹ÞÁö ¸øÇϸé, instance½ÃŰÁö ¾Ê´õ±º¿ä.
µû¶ó¼­ À§ÀÇ ÇÔ¼ö¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.



±×ÈÄ php5°ü·Ã ¸Å´º¾óÀ» º¸´Ù º¸´Ï
À§ÀÇ call_user_method_array, call_user_func_array¸¦ ´õ¿í ü°èÈ­ ÇØ ³õÀº Reflection Ŭ·¡½º°¡ º¸ÀÔ´Ï´Ù.
http://kr2.php.net/manual/kr/language.oop5.reflection.php


±×Áß¿¡¼­µµ ReflectionClass ¶ó´Â ³ÑÀÌ Àִµ¥,

$reflector = new ReflectionClass($className);
$class = $reflector->newInstanceArgs($args);
µîÀ¸·Î µ¿ÀûÀ¸·Î Ŭ·¡½º »ý¼ºÀÚ¸¦ È£ÃâÇÏ¿© instance È­ ½Ãų ¼ö ÀÖ½À´Ï´Ù.



¸»»¡ ¹× ±Û»¡ÀÌ ºÎÁ·Çϳ׿ä.. ^^;;
±âº»ÀûÀÎ ¸Å´º¾ó¿¡ ÀÖ´Â ³»¿ëÀÌÁö¸¸, ÈçÈ÷µé ¾Ë°í °è½ÅµíÇÑ Å¬·¡½º´Â ¾Æ´Ñ µí ÇÏ¿© ¿Ã·Á º¾´Ï´Ù.
³Ê¹« ±âº»ÀûÀεí ÇÏ´Ù ÇϽøé, ¹Ù·Î »èÁ¦Çϵµ·Ï ÇϰڽÀ´Ï´Ù.

Àüü´ñ±Û¼ö 14

  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¼ÛÈ¿Áø 09-08-18 20:40

    ¼Ò½ºº¸±â

  • ÀÎÀÚ ¼ö°¡ °¡º¯À̶ó´Â °Ç°¡¿ä?
    ±×·¯¸é ÀÎÀÚ¸¦ °´Ã¼·Î ³Ñ±â¸é ¾î¶³±î¿ä?

    $args = (object)null;
    $args->userid = 'shimbird';
    $args->email = 'asdf@cddd.com';;
    $args->display = true;

    ¾Æ¿¹ Ŭ·¡½ºÈ­ ½ÃÄѼ­ default °ªÀ» Áְųª validating ±îÁö ÇÒ ¼öµµ ÀÖ°Ú°í¿ä.
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§MC½É»õ 09-08-18 22:22

    ¼Ò½ºº¸±â

  • À½. ¿ª½Ã Àü´ÞÀÌ Àß ¾È µÇ´Â±º¿ä. ±Û»¡ÀÌ ¿ö³« ºÎÁ·ÇÏ´Ù º¸´Ï.. ^^;;

    classA{
      function __construct()
    }
    classB{
      function __construct($id)
    }
    classC{
      function __construct($id, $key)
    }
    classD{
      function __construct($id, $key, $params)
    }


    ¶ó´Â Ŭ·¡½º°¡ ¿©·¯°³ ÀÖ°í, ¾Æ·¡¿Í °°ÀÌ ½Ì±ÛÅæÀ» »ç¿ëÇÏ·Á´Â °æ¿ì
    Singleton::getInstance('classB', $id);

    Singleton::getInstance($className){
      $instance = new $className();
    }
    Çü½ÄÀ¸·Î ±¸ÇöÇÏ´Â °æ¿ì classA¸¸ ÀÌ»ó ¾ø°í ³ª¸ÓÁö´Â ¿À·ù ¸Þ½ÃÁö°¡ ¶ß¸é¼­ ÀνºÅϽº°¡ »ý¼ºµÇÁö ¾ÊÁÒ.
    classB, C, D¿¡¼­´Â argument°¡ Çʼö·Î ÀÖ¾î¾ß Çϴϱî¿ä.
    »ý¼ºÀÚ¿¡ °ªÀ» Àü´ÞÇØ¼­ Á¤»óÀûÀ¸·Î ÀνºÅϽº¸¦ ¸¸µé±â À§ÇÔÀÔ´Ï´Ù.


    ¼³¸íÀÌ ÀÌ»óÇØ¼­ À̰͵µ Àü´ÞÀÌ Àß ¾È µÉµí. ¤Ð,.¤Ð
    javascriptÀÇ apply¿Í ºñ½ÁÇÑ ¿ëµµÀÔ´Ï´Ù.
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§±×³× 09-08-18 22:59

    ¼Ò½ºº¸±â

  • ReflectionClass °¡ Á¤´ä ¸Â½À´Ï´Ù.
    $args ´Â ¹è¿­À̾î¾ß Çϰí¿ä ÀÎÀÚ ¼ø¼­´ë·Î µé¾î°¡¾ß ÇÒ°Ì´Ï´Ù.

    ¶ÇÇÑ
    »ý¼ºÀÚ°¡ ¾øÀ» °æ¿ì´Â

    $class = $reflector->newInstance ();
    ÇÏ½É µË´Ï´Ù.
    »ý¼ºÀÚ°¡ ÀÖ´À³Ä ¾ø´À³Ä¸¦ äũÇÑÈÄ µÎ°¡Áö¸¦ »óȲ¿¡ ¸Â°Ô ¾²½É µË´Ï´Ù.
    ¾Æ¸¶
    ¸Þ¼­µå È®ÀÎÇϴ°Ô
    $reflector->hasMethod('methodname'); ÇüÅ Àϰ̴ϴÙ.
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§Áö³ª°¡´ÂÀÚ 09-08-18 23:37

    ¼Ò½ºº¸±â

  • ³íÁ¡À» Á» ¹þ¾î³­ À̾߱â¶ó Á˼ÛÇÕ´Ï´Ù.

    singletonÀÌ ÈçÇÏ°Ô ¹ß»ýÇÏ´Â °æ¿ì´Â ¾Æ´Ñµí Çϰí
    ²À ÇÊ¿äÇÏ´Ù¸é
    classA{
      public function __construct() {}
      public static function getInstance() {}
    }

    ÇüÅÂ·Î ÇØ´ç Ŭ·¡½º¿¡¼­
    classA::getInstance();
    ·Î Á¢±ÙÇϴ°ÍÀÌ ÁÁÁö ¾Ê³ª »ý°¢ÇÕ´Ï´Ù.
    ²Ù»¶
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¼ÛÈ¿Áø 09-08-18 23:45

    ¼Ò½ºº¸±â

  • ´©°¡ ¸¸µç Ŭ·¡½º°Ç »ó°ü¾øÀÌ ½Ì±ÛÅÏÀ¸·Î ¾²±â À§ÇÑ Å¬·¡½ºÀεí ÇÕ´Ï´Ù.

    ±×·¯°íº¸´Ï ÀÎÀÚ°¡ µé¾î°¡¸é ±× ÀÎÀÚ±îÁö °í·ÁÇØ¼­ ½Ì±ÛÅÏ º¯¼ö¸¦ °ü¸®ÇØ¾ß °Ú³×¿ä.
    È¿À²ÀÌ ¸¹ÀÌ ¶³¾îÁö´Â °Í °°Àºµ¥...
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§³¶¸Á¹é¼ö 09-08-19 00:18

    ¼Ò½ºº¸±â

  • Á¤¸» ½áº¸°í ½ÍÀº ¸¶À½Àº ±¼¶ÒÀε¥. ¤»¤»

    Àб⸸ ÇØµµ °¨»çÇϳ׿ä. ÀÌ·±°Å °°ÀÌ °í¹ÎÇÒ ÇüÆíÀÌ »¡¸® µÇ¾ßÇÒÅÙµ¥.

    ²Ù¹÷~!
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§Áö³ª°¡´ÂÀÚ 09-08-19 01:46

    ¼Ò½ºº¸±â

  • °­Á¦Çϴ°ÍÀº ¾Æ´ÒÅ×°í °¢ÀÚÀÇ ÇØ¼®ÀÌ ´Ù¸¦¼ö ÀÖ°Ú½À´Ï´Ù¸¸
    GoFÀÇ µðÀÚÀÎ ÆÐÅÏ Ã¥Áß ½Ì±ÛÅæ ÆÐÅÏ °ü·Ã ¼½¼Ç?¿¡
    ÀÚ½ÅÀÇ À¯ÀÏÇÑ ÀνºÅϽº¿¡ Á¢±ÙÇÏ´Â ¹æ¹ýÀ»
    Ŭ·¡½º ÀÚüÀûÀ¸·Î °ü¸®ÇÏ°Ô ÇÑ´Ù´Â ºÎºÐÀÌ ÀÖ½À´Ï´Ù.

    ±× ÀÌÁ¡ÀÇ ¹üÀ§¸¦ ³ÐÈ÷°íÀÚ ÇÏ´Â Àǵµ´Â ÀÛ¼ºÀÚ²²¼­ ¹àÈ÷¼ÌÀ¸³ª
    Zend Framework ³»ºÎ¿¡¼­µµ À¯ÀϼºÀÌ º¸ÀåµÇ¾î¾ßÇÒ Å¬·¡½º¿¡¼­´Â
    ÀÚü singleton Á¢±Ù¹ý(Zend_XXX::getInstance())À» Á¦½ÃÇϰí ÀÖ½À´Ï´Ù.
    Zend_Registry, Zend_Controller, Zend_Auth µîµî...

    °ü·Ã ¸Þ¼Òµå°¡ Á¸ÀçÇÏÁö ¾ÊÀ»°æ¿ì ºÎµæÀÌÇϰÔ

    class My_ClassA extends Zend_ClassA
    {
        public static function getInstance($id,$key) {
            if (null === self::$_instance) {
                self::$_instance = new self($id, $key);
            }
            return self::$_instance;
        }
    }

    $a= My_ClassA::getInstance($id, $key);
    Á¤µµ·Î °¢°¢ È®ÀåÇØº¸´Â°Íµµ ±¦ÂúÀ»µí Çϰí...

    ´ÜÇѹø ÀνºÅϽº µÇ¾î¾ß ÇÑ´Ù¸é
    ¿ª½Ã ¸í½ÃÀûÀ¸·Î °ü¸®µÇ¾î¾ß ÇÏÁö ¾ÊÀ»±î ÇØ¼­ µå¸°¸»¾¸ÀÔ´Ï´Ù.


    ²À ÇÊ¿äÇÏ´Ù¸é

    class Zend_ClassA {
    function __construct($id) {
    echo '<pre>';
    print_r(func_get_args());
    echo '</pre>';
    }
    }

    class Zend_ClassB {
    function __construct($id, $key) {
    echo '<pre>';
    print_r(func_get_args());
    echo '</pre>';
    }
    }

    class singleton {
    private static $instances = array();
    public static function getInstance() {
    $params = func_get_args();
    $params_md5 = md5(serialize($params));

    $class_name = array_shift($params);

    /* ¾Ë·ÁÁֽŠReflectionClass ´öºÐ¿¡ »èÁ¦
    $paramstr = '';
    foreach ($params as $i => $param){
    $paramstr.= ($i > 0 ? ', ' : '').'$params['.$i.']';
    }
    */

    if(array_key_exists($params_md5, self::$instances)) {
    echo 'same';
    } else {
    $reflector = new ReflectionClass($class_name);
    self::$instances[$params_md5] = $reflector->newInstanceArgs($params);
    //self::$instances[$params_md5] = eval("new ".$class_name."(".$paramstr.");");// ¿ª½Ã»èÁ¦
    }
    return self::$instances[$params_md5];
    }
    }

    singleton::getInstance('Zend_ClassA', 'a');
    singleton::getInstance('Zend_ClassB', 'a','b');
    singleton::getInstance('Zend_ClassB', 'a',array(0,1,2));
    singleton::getInstance('Zend_ClassB', 'a','b');


    ÀÌ¿Í À¯»çÇÑ Äڵ尡 ³ª¿Ã¼ö¹Û¿¡ ¾øÀ»Å×±¸¿ä...
    ¾Ë·ÁÁֽŠReflectionClass·Î ÇÏ´Ï ÈÎ °£°áÇϳ׿ä. °¨»çÇÕ´Ï´Ù. ^^
    ±×·¯°í º¸´Ï Zend_Registry ·Îµµ ¸¸µé¼ö Àְڳ׿ä
    ÇÏÁö¸¸
    class My_ClassA extends Zend_ClassA
    {
        // .....

        public static function getInstance($id,$key) {
            if (null === self::$_instance) {
                self::$_instance = new self($id, $key);
            }
            return self::$_instance;
        }
    }
    My_ClassA::getInstance($id, $key);

    À̹æ¹ý º¸´Ü ¸øÇÏ´Ü »ý°¢À» Áö¿ï¼ö°¡ ¾ø½À´Ï´Ù.

    ¼öÁ¤À» ¸î¹øÇÏ´Ùº¸´Ï ¼ÛÈ¿Áø´Ô ´ñ±Û¿¡ ÀÖ´Ù°¡
    ¿Å°Ü¿À°Ô µÇ¾î Á˼ÛÇÑ´ñ±ÛÀÌ µÇ¾ú½À´Ï´Ù.
    ´õºÒ¾î ¿ÀŸ¹× ¹®¹ý¿À·ù´Â ¾Ö±³ ^^
    ²Ù¹÷
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§MC½É»õ 09-08-19 10:28

    ¼Ò½ºº¸±â

  • °í°ß °¨»ç µå¸³´Ï´Ù. ^^

    À§ Äڵ尡 ³ª¿Ô´ø ÀÌÀ¯´Â, ClassLoader ¿ªÇÒÀÌ ÄǽÀ´Ï´Ù.
    $db = ClassLoader('db.mysql'); Çü½ÄÀ¸·Î »ç¿ë Çß¾úÁÒ..

    ±¸ÇöÀ» ÇÏ°í º¸´Ï, °°Àº Ŭ·¡½º¸¦ ¿©·¯¹ø »ý¼º½ÃŰ±æ·¡
    $db = ClassLoader::getInstance('db.mysql'); Çü½ÄÀÇ ½Ì±ÛÅæÀ¸·Î º¯°æÇÏ¿´½À´Ï´Ù.
    ¸Þ¼Òµå ³»¿¡¼­ ½ÇÇàÇϱ⿡, ÈξÀ ´õ ¸í½ÃÀûÀÌ°í ¿©·¯¹ø È£ÃâµÇ´õ¶óµµ °ÆÁ¤ ¾ø´õ±º¿ä..
    ³ªÁß¿¡ ClassLoader::clear(); µîÀ¸·Î »ý¼ºµÈ instance¸¦ ÀüºÎ Á¦°ÅÇÒ ¼öµµ ÀÖ±¸¿ä..
    ÀÌ°Ô 2004³âÂë ÄÚµå·Î »ý°¢µË´Ï´Ù.


    ±× ÈÄ ÀÌ ºÎºÐ¿¡ ´ëÇØ¼­´Â ÀǽÉÇÑÀû ¾ø¾ú°í, zend³ª php.netÀÇ ¿¹Á¦ ¹× Äڵ带 º¸¸é¼­µµ ÀǽÉÀ» ¾È Ç߳׿ä..
    Zend_Loader¸¦ º¸¸é¼­µµ, ¿Ö instance¸¦ ¹ß»ý½ÃŰÁö ¾ÊÀ»±î?. ¶ó°í¸¸ »ý°¢ÇßÀ¸´Ï±î¿ä..

    2004³â¿¡ ºñÇØ ÇÁ·Î±×·¥ ±Ô¸ð°¡ ¾öû Ä¿Áö´Ù º¸´Ï, ±×¿¡ ¸ÂÃç È®ÀåÇÏ°Ô µÇ¸é¼­ ¿Ã¸°°Çµ¥¿ä..
    Áö³ª°¡´ÂÀÚ´Ô ¸»¾¸À» µè°í º¸´Ï,
    ¿Ö À§ ÄÚµåµéÀ» º¸¸é¼­ ÀǽÉÀ» ¾È Çß´ÂÁö, ºÎ²ô·´³×¿ä..


    Áö±Ý º¸´Ï, loader ¿ªÇÒ°ú singleton ¿ªÇÒ µÎ°³¸¦ Çѹø¿¡ Çϰí ÀÖ¾ú´Âµ¥... ÈåÀ½.
    ´Ù½Ã Á» ÂùÂùÈ÷ ºÐ¼®ÇØ ºÁ¾ß ÇϰڽÀ´Ï´Ù.
    ´Ô ¸»¾¸°ú °°ÀÌ My_ClassA::getInstance($id, $key); Çü½ÄÀÌ ÈξÀ ´õ ¸í½ÃÀûÀ롂 ºÐ¸íÇÕ´Ï´Ù.
    ´Ù½Ã ¿¹Àü Äڵ带 »ç¿ëÇÒ ¼öµµ ÀÖ°ÚÁö¸¸, ÃæºÐÇÑ °í·Á ¾øÀÌ »ç¿ëÇÑ °Í°úÀÇ Â÷ÀÌ´Â ¾öû³ª´Ù°í »ý°¢ÇÕ´Ï´Ù.

    À߸øµÈ »ý°¢ Áý¾îÁּż­ Á¤¸» °¨»çÇÕ´Ï´Ù.
    ps) Âü°í·Î ¿¹ÀüºÎÅÍ Á¦°¡ ±¸ÇöÇÑ ¹æ½ÄÀº singletonÀ̶ó±â º¸´Ù Fly Weight ÆÐÅÏÀÌ ¾Æ´Ñ°¡ ÀǽÉÀº Çϰí ÀÖ¾ú½À´Ï´Ù. ¸»¾¸ µè°í º¸´Ï È®½ÇÈ÷ ±×ÂÊ¿¡ ´õ °¡±î¿ö º¸À̳׿ä..
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§Áö³ª°¡´ÂÀÚ 09-08-19 10:57

    ¼Ò½ºº¸±â

  • ´öºÐ¿¡ Àúµµ ¸¹Àº °øºÎ°¡ µÇ¾ú½À´Ï´Ù.
    °¨»çÇÕ´Ï´Ù ^^
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§³¶¸Á¹é¼ö 09-08-19 14:58

    ¼Ò½ºº¸±â

  • ÀÌ À̽´´Â º»¹®ÀÇ ¿äÁ¡°ú´Â ¹«°üÇÑ ½ÌŬſ °ü·Ã À̽´ÁÒ? ¸í½ÃÈ­ÇÏ´Â°Ô ÁÁ´Ù´Â?
    Çò°¥·Á¼­ ¹°¾îº¾´Ï´Ù.

    ²Ù¹÷~!
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§Áö³ª°¡´ÂÀÚ 09-08-19 15:43

    ¼Ò½ºº¸±â

  • ³× ¹¹ ¿ëµµ°¡ Á» ´Ù¸£´Ù ÂëÀÌ ÀúÀÇ ÀǰßÀÔ´Ï´Ù.

    ==²À ÇÊ¿äÇÏ´Ù¸é== ÀÌÈÄÀÇ ÄÚµå´Â
    ¿ø±Û¿¡ ¾ð±ÞµÈ ³»¿ëÁß argsÀÇ °¹¼ö¿¡ Á¦ÇÑ ¹ÞÁö ¾Ê°í
    ReflectionClass¸¦ ´ëüÇÒ¼ö ÀÖ´Â °íÀüÀû ¹æ¹ýµµ ÁÖ¼®Ã³¸®µÈ ±¸¹®¿¡¼­
    Á¦½ÃÇϰí ÀÖ½À´Ï´Ù.
    function &singleton() {
      static $instants;
      // .....
    }
    ÇüÅ·Π¹Ù²Ù¸é php4¹öÀü¿¡¼­µµ »ç¿ëÇÒ¼ö ÀÖ±¸¿ä..

    °¨»çÇÕ´Ï´Ù.
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§ÇϽÉ^v^ 09-08-19 09:11

    ¼Ò½ºº¸±â

  • ¿©±â ¾Èµå·Î¸Þ´ÙÀΰ¡È¿?
    ¿ÖÄÉ ¿Ü°è¾î ÇÏ´Â ºÐµéÀÌ ¸¹Áö...Áö±¸°¡ ¾Æ´Ñ°¡..
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§±×³× 09-08-19 21:26

    ¼Ò½ºº¸±â

  • ÈåÀ½...
    °ñÀÚ°¡ ÀÎÀÚ¼ö ´Ù¸¥ Ŭ·¡½º »ý¼ºÀÚ¸¦ Çϳª·Î ÇØ°áÇÏÀÚ..
    °¡ ¾Æ´Ñ ½Ì±ÛÅæ¿¡ ÁßÁ¡À» µÐ ¹®Á¦¿´³ª º¸±º¿ä..
  • ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§Áö³ª°¡´ÂÀÚ 09-08-24 00:13

    ¼Ò½ºº¸±â

  • ÀÎÀÚ¼ö°¡ ´Ù¸¥ Ŭ·¡½ºÀÇ ÀνºÅϽº »ý¼º ¹®¹ý°ú °ü·ÃÇÑ ÀÕ½´°¡ ¸Â½À´Ï´Ù.
    ½Ì±ÛÅæ ÆÐÅϰú ¿¬°üµÈ ¹®Á¦¶ó ºÎ°¡ Åä·ÐÀÌ ÀÖ¾ú´Ù º¸½Ã¸é µÉµíÇÕ´Ï´Ù ^^
    Á¦°¡ ¿Ã¸° Àǰ߿¡µµ Á» ¼öÁØÀÌ ³·Áö¸¸ php4¿¡¼­µµ »ç¿ëÇÒ¼ö ÀÖ´Â °°Àº ¸Æ¶ôÀÇ Äڵ尡 ÀÖ½À´Ï´Ù.
    °¨»çÇÕ´Ï´Ù.
  • °Ô½Ã¹° 279°Ç RSS
¹øÈ£ºÐ·ùÁ¦¸ñ±Û¾´À̳¯Â¥Á¶È¸
279 ¹®¹ý json ½ºÅ¸ÀÏ·Î php µ¥ÀÌÅÍ Ç¥ÇöÇϱâ. [7] ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¼ÛÈ¿Áø 13-04-11 935
278 ¹®¹ý CodeIgniter °­ÀǸ¦ ¸¸µé°í ÀÖ½À´Ï´Ù. [1] ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§egoing 13-03-19 857
277 ¹®¹ý php 5.3.3, 5.4.0] json_encode() ¿É¼ÇÀÌ »ý°å½À´Ï´Ù. [5] ±â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¼ÛÈ¿Áø 13-03-13 819
276 ¹®¹ý OOP ¿¬½À¿ë - php interface ¿Í ¿¬°è file upload class ±¸Çö ÷ºÎÆÄÀÏ Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§ºÎÀڵż¼¿ä 12-11-29 1205
275 ¹®¹ý ÆÁÀ̶ó°í Çϱ⵵ ¹¹ÇÑ....mysql like °Ë»ö½Ã ´ë¼Ò¹®ÀÚ ±¸ºÐÇϱâ. [3] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¿Õ°æÅ 12-10-25 1537
274 ¹®¹ý ÀÚ¹Ù½ºÅ©¸³Æ® ¸Þ´º»ý¼º(OOP) ÷ºÎÆÄÀÏ Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§ºÎÀڵż¼¿ä 12-09-10 1584
273 ¹®¹ý Iterator Ŭ·¡½º ±¸Çö [1] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§ºÎÀڵż¼¿ä 12-07-20 1359
272 ¹®¹ý [PHP] parser ¸¦ ¸¸µé¾î º¸ÀÚ (¿¹Á¦ÆÄÀÏ) [4] ÷ºÎÆÄÀÏ Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§±×³× 12-07-19 2272
271 ¹®¹ý ±ò²ûÇÑ ÄÚµùÀ» À§ÇÑ~ "Á¦¾î ±¸Á¶ÀÇ ´ëü ¹®¹ý" [11] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¾Æ½º¶óÈ÷ 12-03-21 2157
270 ¹®¹ý $object->{'@attribute'} [11] ¸µÅ© Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¼ÛÈ¿Áø 12-02-07 1634
269 ¹®¹ý [Ãʺ¸] IP Áß°£¿¡ ¸ðÀÚÀÌÅ© ó¸®Çϱâ~ [15] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¾Æ½º¶óÈ÷ 12-01-16 2306
268 ¹®¹ý ½ºÅ©¸³Æ® ¾ð¾î (php, perl, python, ruby) µéÀÇ ¹®¹ý [10] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§±×³× 11-08-23 3439
267 ¹®¹ý Ȥ½Ã³ª ¸ð¸£½Ã´Â ºÐÀ» À§ÇÏ¿©... º¯¼ö¸í »ý¼ºÇϱâ.. [8] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¹äÀº¸Ô°í´Ù´Ñ´Ù 11-08-23 2537
266 ¹®¹ý Nginx¿¡¼­ FancyURL(CleanURL) ±¸ÇöÇϱâ [8] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§SUMA 11-08-05 2845
265 ¹®¹ý üÀÌ´×]¸®ÅÏ ¹è¿­¿¡ ¹Ù·Î ¹è¿­Ç¥±â¸¦ ÇÒ ¼ö°¡ ¾ø´Ù. [4] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¼ÛÈ¿Áø 11-06-23 2879
264 ¹®¹ý php5.3x mysqli_stmt_bind_param && call_user_func_array [4] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¶ò°¡¶ò°¡»× 11-05-23 2714
263 ¹®¹ý Ajax »ç¿ë½Ã ¼­¹öÃø ÆÄÀÏÀÇ ¹®ÀÚ¼ÂÀÌ utf8 ÀÌ¸é µ¿ÀÛÇÏÁö ¾Ê´Â´Ù¡¦ [10] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§½ÅÀÇ¼Õ 11-04-28 3561
262 ¹®¹ý À¥¼Ò½ºÄÚµù°¡À̵å - ±âÃÊ [9] ¸µÅ© Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§°ø´ë¿©ÀÚ 11-04-22 5189
261 ¹®¹ý jquerymobile ¿¡¼­ ÆäÀÌÁö ·Îµù½Ã ÀÚ¹Ù½ºÅ©¸³Æ® ½ÇÇà Çϱâ [2] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§¶¥±×Áö..(ÀºÅÃ/Àººñ¾Æºü) 11-04-18 9647
260 ¹®¹ý break. ¸ð¸£½Ã´ÂºÐµéÀ» À§ÇØ [22] Àα⠱â¼ú·¹º§Ä¿¹Â´ÏƼ·¹º§ÂîÁúÂîÁú 10-11-08 4323
 
12345678910