CakePHP³ÌÐòÔ±±ØÐëÖªµÀµÄ21Ìõ¼¼ÇÉ
¡¡¡¡ÕâƪÎÄÕ¿ÉÒÔ˵ÊÇCakePHP ½Ì³ÌÖÐ×î¾µäµÄÁË¡£ËäÈ»²»ÊÇÍêÕûµÄÊÖ°ÑÊÖϵÁУ¬ µ«×÷Õß½«×Ô¼ºÊ¹ÓÃCakePHP µÄ¾Ñé×ܽáÁË21Ìõ£¬ÕâЩÓÈÆäÊǶÔÐÂÊÖÊ®·ÖÓÐÓá£
¡¡¡¡·Òëʱ¹ÊÒâ±£ÁôÁËһЩCakePHP ÖÐÌØÓеĴÊÓïûÓзÒ룬 Èçcontroller¡¢modelµÈ¡£ÏàÐÅѧ¹ýCakePHP µÄÈËÓ¦¸ÃÂíÉϾÍÄÜÀí½âËüÃǵÄÒâ˼°É¡£
¡¡¡¡ÁíÍ⣬CakePHP µÄwikiÒѾʧЧ£¬È¡¶ø´úÖ®µÄÊÇÒ»¸öÃûΪbakeryµÄÍøÕ¾¡£ ÔÎÄÖÐÒýÓõÄwikiµÄÁ´½ÓÒ²¶¼ÒѸüе½ÁËbakeryÉÏ¡£
¡¡¡¡¿ìËÙ´´½¨¾²Ì¬Ò³Ãæ
¡¡¡¡ÎÒÏ뽨Á¢¼¸¸öÒ³Ã棬ËüÃǽö°üº¬¾²Ì¬Êý¾Ý£¬Ê¹ÓÃĬÈÏlayout£¬²»ÐèÒªÈκÎmodel¡£ ×î³õÎÒÊÔͼ´´½¨Ò»¸öcontroller²¢ÎªÃ¿¸ö¾²Ì¬Ò³Ã涨ÒåÒ»¸öaction¡£ µ«ÕâÖÖ·½·¨ºÜ±¿×¾£¬Ò²²»ÊʺϿìËÙ´´½¨¾²Ì¬Ò³Ãæ¡£
¡¡¡¡Êµ¼ÊÉÏֻҪʹÓÃpages controller¾Í¿ÉÒÔ×öµ½¡ª¡ªÖ»ÒªÔÚ views/pages Îļþ¼ÐÏ´´½¨Ò»¸ö view£¬¾Í¿ÉÒÔͨ¹ý /pages À´·ÃÎÊ¡£ÀýÈ磬ÎÒ´´½¨ÁË /views/pages/matt.thtml £¬ ¾Í¿ÉÒÔͨ¹ý http://www.example.com/pages/matt À´·ÃÎÊ¡£
¡¡¡¡¸Ä±ä¾²Ì¬Ò³ÃæµÄ±êÌâ
¡¡¡¡Ê¹ÓÃpages controllerʱÈç¹ûÏë¸Ä±äÒ³Ãæ±êÌ⣬ֻÐèÔÚviewÖмÓÈëÒÔÏ´úÂ룺
¡¡¡¡pageTitle = 'Title of your page.'; ?>
¡¡¡¡ÔÚ¾²Ì¬Ò³ÃæÖÐÏòlayout·¢ËÍÊý¾Ý
¡¡¡¡Èç¹ûÐèÒªÏòlayout´«µÝÊý¾Ý(ÀýÈç±íʾµ¼º½À¸ÖÐÄĸö²¿·ÖÓ¦¸Ã¸ßÁÁÏÔʾµÄ±äÁ¿)£¬ ¿ÉÒÔÔÚviewÖÐÌí¼ÓÏÂÃæµÄ´úÂ룺
¡¡¡¡_viewVars['somedata'] = array('some','data'); ?>
¡¡¡¡Õâ¸öÊý×é¾Í¿ÉÒÔÔÚlayoutÖÐͨ¹ý$somedataÀ´·ÃÎÊ¡£
¡¡¡¡¿ìËÙ´´½¨ºǫ́¹ÜÀí
¡¡¡¡Èç¹ûÄãÐèÒª´´½¨ºǫ́¹ÜÀí³ÌÐò£¬²¢ÇÒÏ£ÍûËùÓйÜÀíaction¶¼Î»ÓÚij¸öÌض¨Îļþ¼ÐÏ£¬ ÄÇô´ò¿ª config/core.php ²¢½«ÏÂÃæÕâÒ»ÐеÄ×¢ÊÍÈ¥µô£º
¡¡¡¡define('CAKE_ADMIN', 'admin');
¡¡¡¡ÕâÑùËùÓÐÒÔ¡±admin_¡±¿ªÍ·µÄaction¶¼¿ÉÒÔͨ¹ý /admin/yourcontroller/youraction À´·ÃÎÊ¡£ÀýÈ磬Èç¹ûÔÚposts controllerÖд´½¨ÁËÃûΪ¡±admin_add¡±µÄaction£¬ ÄÇô¿ÉÒÔͨ¹ý www.example.com/admin/posts/add ·ÃÎÊÕâ¸öaction¡£ÕâÑù¾Í¿ÉÒÔ·½±ãµØΪadminĿ¼ÉèÖÃÃÜÂëÒÔ±ÜÃâËûÈËËæÒâ·ÃÎÊ¡£
¡¡¡¡²é¿´ºǫִ́ÐеÄSQLÓï¾ä
¡¡¡¡Ö»Ðè¸Ä±äconfig/core.phpÖеÄDEBUG³£Á¿£¬¼´¿É¿´µ½ºǫִ́ÐеÄSQLÓï¾ä¡£ 0Ϊ²úÆ·¼¶£¬1Ϊ¿ª·¢¼¶£¬2ΪÍêÕûµ÷ÊÔSQL£¬3ΪÍêÕûµ÷ÊÔSQL²¢ÏÔʾ¶ÔÏóÊý¾Ý¡£ ÎÒͨ³£½«DEBUGÉèÖÃΪ2£¬ÕâÑùÿҳµÄµ×²¿»áÏÔʾ³öÒ»¸ö°üº¬SQLµ÷ÊÔÐÅÏ¢µÄ±í¸ñ¡£
¡¡¡¡Èç¹ûÒ³Ãæµ×²¿Ìí¼ÓµÄ±í¸ñ»áÆÆ»µÒ³Ãæ²¼¾Ö(ÌرðÊÇʹÓÃAjax»ñÈ¡Ò³Ãæ²¢ÏÔʾµ½Ò³ÃæÖмä¶ø²»Êǵײ¿Ê±)£¬ Äã¿ÉÒÔÔÚCSSÖÐÌí¼ÓÒÔÏ´úÂëÒÔÒþ²Øµ÷ÊÔÐÅÏ¢£º
¡¡¡¡#cakeSqlLog { display: none; }
¡¡¡¡ÕâÑù¼ÈÄܱ£³ÖÒ³Ãæ²¼¾Ö£¬ÓÖ¿ÉÒÔͨ¹ý²é¿´Ô´´úÂëÀ´¿´µ½µ÷ÊÔÐÅÏ¢¡£ µ±È»×îºó·¢²¼Íøվʱ±ðÍüÁ˽«µ÷ÊÔ¼¶±ð¸Ä»Ø0¡£
¡¡¡¡»ñÈ¡·á¸»µÄ¿ª·¢Îĵµ
¡¡¡¡±ð×ÜÊǶ¢×ÅÊֲᡣwikiºÍAPIÒ²ÊÇÎÞ¼ÛÖ®±¦¡£wikiÖеĿª·¢Ö¸ÄÏÊ®·ÖÓÐÓ㬶øAPIÎĵµ³õ¿´ÆðÀ´±È½ÏÄÑ£¬ µ«ÄãºÜ¿ì¾Í»á·¢ÏÖÕâÀïµÄÐÅÏ¢¶ÔÄã´´½¨CakePHP Íøվʮ·ÖÖØÒª¡£`
¡¡¡¡Ê¹ÓÃbake.php
¡¡¡¡BakeÊǸöÃüÁîÐÐPHP½Å±¾£¬¿ÉÒÔ¸ù¾ÝÊý¾Ý¿â×Ô¶¯Éú³Émodel¡¢controllerºÍview¡£ÔÚ¿ª·¢µÄ×î³õ½×¶Î£¬ÎÒÇ¿ÁÒÍƼöʹÓà scaffoldingÈÃÄãµÄÔÐͳÌÐòÅÜÆðÀ´¡£µ«Èç¹ûÄãÇå³þµØÖªµÀscaffolding²»ºÏÊÊ£¬ÎÒÍƼöÄãʹÓÃbake¡£ bake»áÉú³ÉËùÓеÄÎļþ²¢±£´æµ½´ÅÅÌÉÏ£¬ÒÔ±ãÄãËæÒâÐ޸ġ£ÕâÑùÄܽÚÊ¡´´½¨¹ØÁª¡¢view¡¢»ù±¾µÄCRUD crollder²Ù×÷µÄÖظ´¹¤×÷¡£
¡¡¡¡(ÒëÕß×¢£ºCRUD - Create, Read, Update, Delete£¬Êý¾Ý¿âÓ¦ÓõÄËÄÖÖ»ù±¾²Ù×÷£¬¼´¡±Ôöɾ²é¸Ä¡±¡£)
¡¡¡¡bakeºÜ·½±ã¡£ÄãÖ»ÐèÔÚÊý¾Ý¿âÖн¨Á¢Ò»¸ö±í£¬È»ºóµ½ /cake/scripts/ Ŀ¼ÏÂÖ´ÐÐ php bake.php ¼´¿É¡£
¡¡¡¡Èç¹ûÄãͨ¹ý½»»¥·½Ê½À´ÔËÐÐbake£¬Ëü»á·Ö¼¸²½ÌáʾÄã´´½¨model¡¢controllerºÍview¡£ ´´½¨½áÊøÖ®ºó£¬ÎÒͨ³£»áÔĶÁËùÓÐÉú³ÉµÄ´úÂë²¢×ö±ØÒªµÄÐ޸ġ£
¡¡¡¡·¢²¼³ÌÐòʱעÒâȨÏÞ
¡¡¡¡ÓÐÒ»´ÎÎÒÔÚ·¢²¼³ÌÐòʱ£¬½«Õû¸öcakeĿ¼´ò°üÈ»ºóÓÃscpÉÏ´«µ½ÁË·þÎñÆ÷ÉÏ¡£Ö»ÒªÒ»¹Ø±Õµ÷ÊÔÐÅÏ¢£¬¾Í»á³öÏÖ´íÎ󡪡ªÊý¾Ý¿âµ÷ÓÃÎÞ·¨·µ»ØÈκÎÊý¾Ý¡£ÎÒÒ»³ïĪչ£¬ÒòΪÎÒ±ØÐëͨ¹ýµ÷ÊÔÐÅÏ¢²ÅÄܵ÷ÊÔÎÊÌâ¡£ºóÀ´ÓÐÈ˸æËßÎÒ£¬/app/tmpÓ¦µ±¶Ôapache¿Éд¡£½«È¨ÏÞ¸ÄΪ777Ö®ºóÎÊÌâ¾Í½â¾öÁË¡£
¡¡¡¡¸´ÔÓmodelÑéÖ¤
¡¡¡¡ÎÒÐèÒª½øÐиü¸´ÔÓµÄÑéÖ¤£¬¶ø²»½ö½öÊÇÑéÖ¤ÊäÈë¿ò·Ç¿Õ»òÕß·ûºÏij¸öÕýÔò±í´ïʽÕâÑùµÄ¼òµ¥ÑéÖ¤¡£ ÀýÈ磬ÎÒÒªÑéÖ¤Óû§×¢²áʱʹÓõÄÓʼþµØÖ·ÊÇ·ñÒѱ»Ê¹Óá£ÔÚwikiÖÐÎÒÕÒµ½ÁËÕâƪ ¹ØÓڸ߼¶ÑéÖ¤µÄÎÄÕ£¬ ÆäÖÐÌáµ½ÁËһЩʮ·ÖÓÐÓõĸ߼¶ÑéÖ¤·½·¨¡£
¡¡¡¡¼Ç¼´íÎóÈÕÖ¾
¡¡¡¡$this->log('Something broke');
¡¡¡¡ÕâÑù¿ÉÒÔ½«´íÎó¼Ç¼µ½ /tmp/logs/ ÖÐ(ÎÒ×î³õÒÔΪ»á¼Ç¼µ½apacheµÄ´íÎóÈÕÖ¾ÖÐ)¡£
¡¡¡¡ÈÃcontrollerʹÓÃÆäËûmodel
¡¡¡¡Èç¹ûÄãµÄcontrollerÐèÒªµ÷ÓÃÀ´×Ô²»Í¬modelµÄÊý¾Ý£¬Ö»ÒªÔÚcontroller¿ªÍ·Ê¹ÓÃÈçÏ´úÂ룺
¡¡¡¡class yourController extends AppController {
¡¡¡¡var $uses = array('Post','User');
¡¡¡¡}
¡¡¡¡ÕâÑùcontroller¾ÍÄÜ·ÃÎÊPostºÍUser modelÁË¡£
¡¡¡¡´´½¨²»Ê¹ÓÃÊý¾Ý¿â±íµÄmodel
¡¡¡¡ÎÒÐèÒª´´½¨Ò»¸ö²»Ê¹ÓÃÈκαíµÄmodel¡£ÀýÈ磬ÎÒÏëͨ¹ý$validateÊý×é·½±ãµ×ÑéÖ¤ÊäÈëÊý¾Ý£¬ ±£³ÖmodelÂß¼µÄÕýÈ·ÐÔ¡£µ«´´½¨modelʱ¶ÔÓ¦µÄ±í²»´æÔÚ£¬CakePHP ¾Í»á±¨´í¡£ ͨ¹ýÔÚmodelÖмÓÈëÒÔÏ´úÂë¿ÉÒÔ½â¾öÕâ¸öÎÊÌ⣺
¡¡¡¡var $useTable = false;
¡¡¡¡ÄãÒ²¿ÉÒÔͨ¹ýÕâÖÖ·½·¨¸Ä±ämodel¶ÔÓ¦µÄ±íÃû¡£
¡¡¡¡var $useTable = 'some_table';
¡¡¡¡Öض¨ÏòÖ®ºó¼ÇµÃexit()
¡¡¡¡¶ÔÓÚÓоÑéµÄÈËÀ´ËµÕâÓ¦µ±ÊÇÀíËùµ±È»µÄʶù£¬µ÷Óà $this->redirect() Ö®ºó£¬Ê£ÏµĴúÂëÈç¹û²»ÏëÔËÐÐ Òªexit()¡£ÎÒÒ²ÕâÑù×ö£¬µ«ÒÔÇ°Ôø¾ÈÏΪ $this->redirect() »áΪÎÒµ÷ÓÃexit(ʵ¼ÊÉϲ»»á)¡£
¡¡¡¡¸ß¼¶modelº¯Êý
¡¡¡¡··API¾ÍÄÜ·¢ÏֺܶàÄã²»ÖªµÀµÄ·Ç³£ÓÐÓõĺ¯Êý¡£ ÎÒÇ¿ÁÒÍƼöÖÁÉÙÔĶÁÒ»±é Model ÀàµÄ²Î¿¼Êֲᡣ ÏÂÃæÊÇÒÔÇ°ÎÒûעÒâµ½µÄ¼¸¸öÖØÒªº¯Êý£º
¡¡¡¡* generateList() - Ö÷ÒªÓÃÓÚÉú³ÉÑ¡Ôñ¿ò()ËùÐèµÄÊý¾Ý¡¡¡¡* query() - ×Ô¼ºÐ´SQLÓï¾äÀ´²éѯ¡¡¡¡* findCount() - ·µ»ØÂú×ãÖ¸¶¨Ìõ¼þµÄÐÐÊý¡¡¡¡* hasAny() - µ±ÓмǼÂú×ãÌõ¼þʱ·µ»ØÕæ¡¡¡¡ÔÙ´ÎÇ¿ÁÒÍƼöÔĶÁÕû¸ömodelÀà²Î¿¼£¬Äã»áΪÄãѧµ½µÄ¶«Î÷ÔÞ̾µÄ¡£¡¡¡¡ÈçºÎÕýÈ·²åÈë¶àÐС¡¡¡ÎÒÐèÒª±éÀúÒ»¸öÁÐ±í£¬²¢½«ÆäÖеÄÿ¸öÔªËض¼²åÈëµ½Êý¾Ý¿âÖС£ ÎÒ·¢ÏÖÈç¹ûÔÚÒ»´Î²åÈëÍê³ÉºóÁ¢¼´½øÐÐÏÂÒ»´Î²åÈ룬 ÄÇôµÚ¶þ´Î²åÈëµÄÄÚÈÝÍêÈ«²»»á±»²åÈ룬¶øÊǻᱻ¸üе½µÚÒ»´Î²åÈëµÄÐÐÖС£ ÀýÈ磺¡¡¡¡$items = array('Item 1','Item 2','Item 3'); ¡¡¡¡foreach ($items as $item) { ¡¡¡¡$this->Post->save(array('Post' => array('title' => $item))); ¡¡¡¡} ¡¡¡¡Õâ¶Î´úÂ뽫ÔÚposts±íÖвåÈë½öÒ»ÐУº¡°Item 3¡±¡£ CakePHP Ê×ÏȲåÈë¡°Item 1¡±£¬µ«ÂíÉϽ«Æä¸üÐÂΪ¡°Item 2¡±£¬ÔÙ¸üÐÂΪ¡°Item 3¡±£¬ÒòΪ$this->Post->id±£´æµÄÊÇÉÏÒ»´Î²åÈë³É¹¦µÄÐеÄid¡£Í¨³£Õâ¸öÌØÐÔºÜÓÐÓ㬵«ÔÚÕâ¸öÀý×ÓÖз´¶ø°ïÁ˵¹Ã¦¡£ÆäʵֻҪÔÚÿ´Î²åÈëÖ®ºóÉèÖà $this->Post->id = false ¾Í¿ÉÒÔ½â¾öÕâ¸öÎÊÌâ¡£¡¡¡¡¸üУºÓÐÈË·¢Óʼþ¸æËßÎÒ£¬ÕýÈ·µÄ×ö·¨Êǵ÷ÓÃcreate()³õʼ»¯model£¬ÔÙset/saveÐÂÊý¾Ý¡£¡¡¡¡ÔÚ controllerº¯Êý֮ǰ»òÖ®ºó²åÈëÂß¼¡¡¡¡¼ÙÉèÄãÐèÒªÔÚcontrolleräÖȾµÄÿ¸öviewÖж¼ÉèÖÃÒ»¸öÑÕÉ«Êý×飬 µ«Ä㲻ϣÍûÔÚÿ¸öactionÖж¼¶¨ÒåËü¡£¿ÉÒÔͨ¹ý beforeRender () »Øµ÷º¯ÊýÀ´ÊµÏÖ£º¡¡¡¡function beforeRender () { ¡¡¡¡$this->set('colors',array('red','blue','green'); ¡¡¡¡} ¡¡¡¡ÕâÑù¸ÃcontrolleräÖȾµÄËùÓÐview¶¼¿ÉÒÔ·ÃÎÊ$colors±äÁ¿¡£ beforeRender () º¯ÊýÔÚcontrollerÂß¼½áÊøºó¡¢view±»äÖȾ֮ǰִÐС£Í¬Ñù£¬ beforeFilter() ºÍafterFilter() º¯Êý»áÔÚÿ¸öcontroller actionÖ´ÐеÄÇ°ºóÖ´ÐС£ ¸ü¶àÐÅÏ¢ÇëÔĶÁÊÖ²áµÄmodelsÒ»½Ú¡£¡¡¡¡ÎªCakePHP Ìí¼ÓËù¼û¼´ËùµÃ±à¼Æ÷¡¡¡¡ÕâÀïÓÐһƪ·Ç³£ºÃµÄ½Ì³Ì½ÌÄãÈçºÎÔÚ CakePHP ÖÐʹÓÃTinyMCE¡£»ù±¾ÉÏÄãÖ»ÐèÔÚÒ³ÃæÉÏÁ´½Ótiny_mce.jsÎļþ£¬È»ºóÌí¼ÓһЩ³õʼ»¯´úÂëÒÔÉèÖà ½«Äĸötextarea±ä³ÉTinyMCE±à¼Æ÷¼´¿É¡£¡¡¡¡×Ô¶¨ÒåHABTM¹ØϵµÄSQLÓï¾ä¡¡¡¡ÎÒÔøÊÔͼÔÚ×Ô¶¨ÒåµÄSQLÓï¾äÉ϶¨ÒåÒ»¸öHABTM¹Øϵ (has-and-belongs-to-many)£¬È´Óöµ½ÁËÎÊÌâ¡£ ¸ù¾Ý±¾ÎÄ׫¸åʱµÄÎĵµ£¬Ó¦µ±ÏÈÔÚ×Ô¼ºµÄmodelÖÐÉèÖÃfinderSql£¬µ«´ÓCakePHP µÄÔ´´úÂëÀ´¿´£¬ Ó¦¸ÃÉèÖÃfinderQuery¡£ÕâÖ»ÊÇÎĵµÖеÄÒ»¸öСÎÊÌ⣬µ«Ö¸³öÎÊÌâÈ´ÄÜΪËûÈ˽ÚԼʱ¼ä¡£ Trac ticketÔÚÕâÀï¡£¡¡¡¡·¢ËÍÓʼþ¡¡¡¡ÎÒÔÚwikiÖÐÕÒµ½Á½Æª½Ì³Ì£º·¢ËÍÓʼþºÍ ͨ¹ýPHPMailer·¢ËÍÓʼþ¡£ Ç¿ÁÒÍƼöºóÕߣ¬Í¨¹ýPHPMailer·¢ËÍÓʼþ¸ü°²È«£¬¶øÇÒ²»ÐèÒª×Ô¼º´¦ÀíÓʼþÍ·£¬¼õÉÙÐí¶àÂé·³¡£¡¡¡¡×Ô¶¨ÒåHelperÉú³ÉµÄHTML ¡¡¡¡ÎÒÐèÒªÐ޸ĵ÷ÓÃ$html->selectTag()ʱÉú³ÉµÄ£¬Ê¹ÆäÉú³É¡°ÇëÑ¡Ôñ¡±Ñ¡ÏîÀ´´úÌæĬÈϵĿհ×Ñ¡Ïî¡£ ÎÒҲϣÍûµ¥Ñ¡°´Å¥ÄÜ´øÓбêÇ©£¬ÕâÑùÓû§¾ÍÎÞÐ辫ȷµØµã»÷µ¥Ñ¡°´Å¥±¾Éí£¬¶øÖ»Ðèµ¥»÷µ½¹ØÁªµÄÎÄ×ÖÉϼ´¿É¡£¡¡¡¡½¨Á¢ /app/config/tags.ini.php£¬È»ºóÌí¼ÓÒÔϵÄÄÚÈÝ£º¡¡¡¡; Tag template for a input type='radio' tag. ¡¡¡¡radio = "%s"
ÍƼöÐÅÏ¢
- ¡¾ÊÓƵ²¥·Å¡¿JplayerÊÓƵ²¥·ÅÆ÷µÄʹÓÃ
- memcacheÄÚ´æÔÀí
- Memcache¼¼Êõ·ÖÏí£º½éÉÜ¡¢Ê¹Óᢴ洢¡¢Ëã·¨¡¢ÓÅ»¯....
- php³£ÓÃÕýÔò±í´ïʽ
- phpÐÔÄܼà²âÄ£¿éXHProf
- ÈÃCI¿ò¼ÜÖ§³Öservice²ã
- ʹÓÃPHPÉú³É´øLOGOµÄ¸öÐÔ»¯¶þάÂëͼÏñ
- ¹ØÓÚCodeIgniterÄã¿ÉÄܲ»ÖªµÀµÄ5¸ö֪ʶµã
- Memcache ºÁÃ뼶³¬Ê±¼°ÆäËû³£¼ûÎÊÌâ»ã×Ü
- [PHP±Ê¼Ç]PHPQueryÒ»¸ö´¦ÀíDOMµÄÀûÆ÷
ÈÈÃÅÐÅÏ¢
- nohup: redirecting stderr to stdou....
- ʹÓÃlog_formatΪNginx·þÎñÆ÷ÉèÖøüÏêϸµÄÈÕÖ¾¸ñʽ
- jquery easyUI--dataGrid-Json
- [Ô´´]·ÂGoogle Reader¡¢ÐÂÀË΢²©¡¢ÌÚѶ΢²©µ....
- ÀûÓÃKeepalived+mysql¹¹½¨¸ß¿ÉÓÃMySQLË«Ö÷×Ô¶....
- Nginx+keepalivedʵÏÖ¸ºÔؾùºâºÍË«»úÈȱ¸¸ß¿ÉÓÃ
- jqueryʵÏÖÒ³Ãæ¼ÓÔؽø¶ÈÌõ
- Rolling cURL: PHP²¢·¢×î¼Ñʵ¼ù
- codeigniter ·ÓÉÖÕ¼«ÓÅ»¯(url rewrite)
- linuxÏÂÉèÖÃsshÎÞÃÜÂëµÇ¼
×î½ü¸üÐÂ
- PHP»ñÈ¡Óû§µÄÕæʵIP£¬²¢ÅжÏÊÇ·ñÄÚÍøIP
- PHP ´íÎóÈÕÖ¾ error_log
- ÀûÓÃbigpipe»úÖÆʵÏÖÒ³ÃæÄ£¿éµÄÒì²½äÖȾ chunked¼¼Êõ
- php¿ØÖÆÎļþÏÂÔØËÙ¶È
- js + php ¶ÁÈ¡¡¢²¥·ÅÊÓƵÁ÷ ¼æÈÝfirefox£¬c....
- ¡¾ÊÓƵ²¥·Å¡¿JplayerÊÓƵ²¥·ÅÆ÷µÄʹÓÃ
- UNICODE Óë UTF-8 µÄ¹Øϵ
- memcacheÄÚ´æÔÀí
- Memcache¼¼Êõ·ÖÏí£º½éÉÜ¡¢Ê¹Óᢴ洢¡¢Ëã·¨¡¢ÓÅ»¯....
- phpʹÓÃmb_detect_encoding¼ì²â×Ö·û´®±àÂë
ÆÀÂÛ