¼òÊöMVC˼ÏëÓëPHPÈçºÎʵÏÖMVC
ÎÒÏàÐÅÒѾÓкܶàÕâÑùµÄÎÄÕÂÁË£¬µ«ÊÇÎÒ½ñÌ컹ÊÇÔ¸Òâ°Ñ×Ô¼ºµÄ¾ÑéÓë´ó¼Ò·ÖÏíһϡ£´¿ÊôÔ´´£¬ÎÒҲûʲô±£Áô£¬Ï£Íû¶ÔÐÂÊÖÓаïÖú£¬ÓÐ˵µÄ²»¶ÔµÄµØ·½£¬Ò²»¶ÓÖ¸³ö¡£
ʲôÊÇMVC£¿
¼òµ¥µÄ˵¾ÍÊǽ«ÍøÕ¾Ô´Âë·ÖÀà¡¢·Ö²ã¡£
MVCÈý¸ö×ÖĸµÄº¬Ò壺
M£ºModel Ä£ÐÍ£¬¸ºÔðÊý¾Ý¿â²Ù×÷¡£
V£ºView ÊÓͼ£¬¸ºÔðµ÷ÓÃModelµ÷È¡Êý¾Ý£¬ÔÙµ÷ÓÃÄ£°å£¬Õ¹Ê¾³ö×îÖÕЧ¹û¡£
C£ºController ¿ØÖÆÆ÷£¬³ÌÐòµÄÈë¿Ú£¬¾ö¶¨¸Äµ÷ÓÃÄĸöView£¬²¢¸æËßView¸Ã×öʲô¡£
Èç´Ë˵À´£¬³ÌÐòµÄÖ´ÐÐ˳ÐòÊÇC-V-M »ò C-M £¬ºÍMVCµÄÃû×ÖÕýºÃÏà·´¡£
ΪʲôҪMVC£¿
1.ÄÜʹÍøÕ¾³ÌÐòÎïÀí½á¹¹¸üºÏÀí¡£
µ±ÓÃPHP½¨ÉèÒ»¸öÍøÕ¾µÄʱºò£¬×µÄ·½·¨£¬Äã¿ÉÄÜ°Ñÿ¸öÒ³Ã潨³ÉÒ»¸öPHPÎļþ¡£Èç¹ûÄãµÄÍøÕ¾Ö»ÓÐ index.php£¬menu.php.article.php Èý¸öÒ³Ã棬ÄÇÄã¿ÉÒÔ²»ÓÃMVC£¬µ«ÎÒÃÇ×öÒ»°ãµÄÍøÕ¾µÄʱºò£¬¶¯éü¼¸Ê®¸öÒ³Ã棬°ÑËùÓÐÒ³Ãæ·ÅÔÚ¸ùĿ¼ÏÔÈ»²»ÊÇÎÒÃÇËùÄܽÓÊܵģ¬ÓÚÊÇÄãÐèÒªÒ»¸öºÏÀíµÄ˼ÏëÈ¥½« ÄãµÄ´úÂë·ÖÀ࣬°´¹¦ÄÜ°ÑËûÃǷֳɲ»Í¬µÄĿ¼£¬ÇÒÓɳÌÐòÖÇÄܵÄÔØÈëµ÷Óã¬Õâ¾ÍÊÇMVCÒª°ïÖúÄã×öµÄ¡£
2.ʹ´úÂë¸üÈÝÒ×ά»¤¡£
ÎÒÃÇÔÙÀ´¿´µ¥¸öÒ³Ã棬×µÄ·½·¨£¬¾ÍÊÇPHP´úÂëÓëHTML´úÂë»ìºÏ£¬ÕâÏÔÈ»²»¹»ºÃ£¬ÄãÔÚά»¤ÍøÕ¾µÄʱºò²»µÃ²»Çø·ÖÄÄÀïÊÇPHP£¬ÄÄÀïÊÇHTML£¬ Õâ¶ÔÓÚÒ»¸ö³ÌÐòÔ±À´Ëµ£¬¼òÖ±Ö»ÔÖÄÑ¡£ÓÚÊǺܶàÈ˾ÍʹÓÃSmarty£¬ÕâÑù¾Í¿ÉÒÔ½«¡°Êý¾Ý´¦Àí¡±Óë¡°Ò³Ãæչʾ¡±·Ö¿ªÀ´£¬ÕâÑù×öµÄÈ·²»´í£¬Ò²ÓкܶàÈËÕýÔÚÕâô ×ö£¬µ«Õ⻹²»ÊÇMVC£¬MVCÒª×öµÄ¾ÍÊǽ«¡°Êý¾Ý´¦Àí¡±ÔÙ·ÖΪ¡°Âß¼´¦Àí¡±Óë¡°Êý¾Ý¿â²Ù×÷¡±£¬Õâ¾ÍÊÇËù˵µÄ·Ö²ã¡£
ÕâÑùµ±ÄãµÄ³ÌÐò´íÎó»òÏëÒªÐ޸ĵÄʱºò£¬¾Í±äµÃºÜÇáËÉÁË£¬µ±Ò³ÃæÏÔʾ´íÎóµÄʱºò£¬Äã¾ÍÈ¥¼ì²éV»òÄ£°åÎļþ£»µ±Âß¼ÓÐÎÊÌâµÄʱºò£¬Äã¾ÍÈ¥¼ì²éCºÍV£»µ±ÄãÊý¾Ý¿â²Ù×÷´íÎó¾ÍÈ¥¼ì²éM¡£
ÆäʵMVCÒ»°ãÒª°ÑPHPµÄÒ»¸öÒ³Ãæ·Ö¸îΪ4¸öÒ³Ã棬·Ö±ðÊÇC£¬V£¬M£¬Ä£°å¡£¸÷˾ÆäÖ°£¬·½±ã¹ÜÀí¡£
3.ÓÐÀûÓÚ´úÂ븴Óá£
MVC»á°ÑÒ»°ã»á°ÑÒ»¸ö´óµÄ¹¦ÄÜ·ÅÔÚÒ»¸öĿ¼Ï£¬Ò²¾ÍÊÇÓÉÒ»¸öCÈ¥¹ÜÀí¡£
ÀýÈçÒª×öÒ»¸öº¬ÓлáԱϵͳµÄÍøÕ¾£¬ÎÒÃǾͿÉÒÔ°Ñ»áÔ±Ïà¹ØµÄ´úÂ붼·Åµ½userĿ¼ÀÓÉUser_Controllerͳһ¹ÜÀí£¬µ±ÎÒÃÇÁíÒ»¸öÍøÕ¾Ò²ÐèÒª»áԱϵͳµÄʱºò£¬ÎÒÃǾͿÉÒÔÖ±½Ó°ÑÕâ¸öĿ¼¸´ÖƹýÈ¥£¬ÐÞ¸ÄһϽӿھͿÉÒÔÁË¡£PHPʵÏÖMVCµÄ˼·
ÎÒÃÇÐèÒªÈý¸ö»ùÀࣺController¡¢View¡¢Model £¬È»ºó²»Í¬µÄC¡¢V¡¢M·Ö±ð¼Ì³ÐËûÃǾÍÓжÔÓ¦µÄÊôÐÔÓë·½·¨ÁË£¬Èç¹ûÕâÀïÄã²»Àí½â£¬¿ÉÒÔÈ¥¿´¿´ÃæÏò¶ÔÏóµÄÊé¡£
ÎÒ¸ø´ó¼ÒÌṩһÖÖMVC»ùÀàµÄÉè¼Æ˼·£¬½ö¹©²Î¿¼£º
1. ControllerÀàµÄÉè¼Æ
Ò»¸ömain£¨£©·½·¨£¬¹©³ÌÐòµ÷Óã¬Ö÷ÒªÊÇͨ¹ýgetºÍpost±äÁ¿¾ö¶¨¸ÃÈçºÎ´¦Àí¡£
Ò»¸ögetModel£¨$model£©·½·¨£¬ÔÚÐèÒªµ÷ÓÃÊý¾Ý¿âµÄʱºò£¬µ÷ÓöÔӦĿ¼µÄM¡£
Ò»¸ödisplay£¨$view£©·½·¨£¬ÔÚmain£¨£©·½·¨Öе÷Óã¬ÔØÈë¶ÔÓ¦µÄV£¬²¢µôÓ¦VµÄmain£¨£©·½·¨£»
2.ViewÀàµÄÉè¼ÆÓëControllerºÜÏàËÆ
Ò»¸ömain£¨£©·½·¨£¬µ±CÔØÈëVµÄʱºòµ÷ÓÃÕâ¸ö·½·¨£¬Ê¹³ÌÐòÄܼÌÐøÖ´ÐÐÏÂÈ¥¡£
Ò»¸ögetModel£¨$model£©·½·¨£¬ÔÚÐèÒªµ÷ÓÃÊý¾Ý¿âµÄʱºò£¬µ÷ÓöÔӦĿ¼µÄM¡£
Ò»¸ödisplay£¨$template£©£¬µ÷ÓöÔÓ¦µÄÄ£°åÎļþ£¬²¢°ÑÊý¾Ý´«µÝ¸øÄ£°å¡£
3.ModelÀàµÄÉè¼Æ
¿ÉÒÔ¶¨ÒåһЩÊôÐÔ£¬ÀýÈçÒª²Ù×÷ÄÇЩ±í£¬²Ù×÷ÄÇЩ×ֶεȡ£
Ò»¸ögetDB£¨£©·½·¨£¬»ñµÃÒ»¸öÊý¾Ý¿âÀàµÄʵÀý£¬£¨Êý¾Ý¿âÀàÒ»°ã¶¼ÊÇÓõ¥¼þģʽÉè¼ÆµÄ£©
Ò»¸öload£¨£©·½·¨£¬ÔØÈëÒ»¸öÊý¾Ý¡£
Ò»¸öadd£¨£©·½·¨£¬¿ÉÒÔ¸ù¾Ý¶¨ÒåºÃµÄÊôÐÔ×Ô¶¯¹¹ÔìSQLÓï¾ä£¬²¢Ö´ÐвåÈë²Ù×÷¡£
Ò»¸öeidt£¨£©·½·¨£¬Í¬ÉÏ£¬µ«Ö´ÐÐÐ޸IJÙ×÷¡£
Ò»¸ödel£¨£©·½·¨£¬Í¬ÉÏ£¬µ«Ö´ÐÐɾ³ý²Ù×÷¡£
ΪÁËÄÜʹÐÂÊÖ¸üºÃµÄÀí½âÎÒÕâ¸ö˼·µÄ¹¤×÷ÔÀí£¬ÎÒÃÇÏÖÔÚÄ£ÄâÒ»¸öÓû§µÇ¼µÄ³¡¾°£¬¿´¿´MVCÊÇÈçºÎ¹¤×÷µÄ¡£
ÏÖÔÚ¼ÙÉ裬ËùÓеÄÊý¾Ý¶¼Ìá½»¸øindex.php£¬
µÚÒ»²½£º
ÎÒÃÇÌá½»¸÷get±äÁ¿£¬¸æËßindex.php¸ÃÓÃÄĸöC£¬ÀýÈç¿ÉÒÔÕâÑùindex.php£¿controller=user
È»ºóindex½ÓÊÕµ½get±äÁ¿£¬Ê²Ã´Ò²²»ÐèÒª×ö£¬Ö±½ÓÕÒµ½/user/controller.php£¬°ÑËùÓÐÊý¾Ý¶ª¸øËû£¬±¾À´GETºÍPOST¾ÍÊÇÈ«¾ÖµÄ£¬ËùÒÔindex.phpÒ²²»ÐèÒª×öʲô£¬Ö±½Óµ÷ÓÃCµÄmainº¯Êý¾Í¿ÉÒÔÁË£¬µ½´Ëindex.phpµÄÈÎÎñÍê³É¡£
µÚ¶þ²½£º
CµÄmainº¯Êý¿ªÊ¼Ö´ÐУ¬¼ì²é±äÁ¿£¬·¢ÏÖÓû§ÒªÖ´ÐеĵǼ²Ù×÷£¨ºÜ¼òµ¥£¬Äãpost¸ö±äÁ¿do=login¾Í¿ÉÒÔÁË£©£¬ÓÚÊǵ÷Óà getModel£¬ÔØÈë¶ÔÓ¦µÄMÀࣨÀýÈç/user/models/model.php£©£¬²¢ÊµÀý»¯£¬ µ÷ÓÃʵÀýµÄload·½·¨£¬ÔØÈë¸ÃÓû§µÄÊý¾Ý×ÊÁÏ£¬ÅжÏÊÇ·ñÓëÓû§Ìá½»µÄÃÜÂëÒ»Ö£¬Èç¹ûÌá½»µÄÊý¾Ý²»ÕýÈ·headerÌøתµ½³ö´íÒ³Ã棬Èç¹ûÕýÈ·£¬µ÷Óà display£¨£©·½·¨£¬ÔØÈë¶ÔÓ¦µÄV£¨ÀýÈç/user/views/details.php£©£¬²¢ÊµÀý»¯£¬µ÷ÓÃÆämain£¨£©º¯Êý£¬½øÈëµÚÈý²½¡£µ½´ËC µÄÈÎÎñÒÑÍê³É£¬µÚ¶þ²»²Ù×÷¾ùÔÚmainº¯ÊýÖнøÐС£
µÚÈý²½£º
Äã¿ÉÒÔÑ¡Ôñµ÷ÓÃgetModel£¨£©ÔØÈëM£¬ÖØдµ÷È¡Êý¾Ý£¬Ò²¿ÉÒÔÔÚCʵÀý»¯VµÄʱºò£¬°Ñ²ÎÊý´«¹ýÀ´£¨ÀýÈçSESSION£©£¬µ±VÒѾȷ¶¨µÃµ½Êý¾ÝÒÔºó£¬display£¨£©£¬ÔØÈëÄ£°å£¬MVCÖ´ÐÐÍê±Ï¡£
µ±È»£¬ÓÉÓÚ×ÖÊýÓ뾫Á¦ÏÞÖÆ£¬ÕâÀïдµÄÖ»ÊǷdz£¼òÒªµÄ¸ÅÀ¨£¬Êµ¼ÊʵʩµÄʱºòÒª¿¼ÂǺܶàϸ½Ú£¬µ«ÎÒÉè¼ÆMVCµÄʱºò£¬´ó¸Å˼·¾ÍÊÇÕâÑù£¬Ò²Óõ½ÁËʵ¼ÊÖУ¬¸Ð¾õÁ¼ºÃ¡£
ÕâƪÎÄÕ²»ËãÈíÎÄ£¬Ð´¶¼ÊÇʵ¼ÊµÄ¶«Î÷£¬Ï£Íû¶ÔÐÂÊÖÓаïÖú£¬Èç¹ûÄã¶Á²»¶®£¬¶Ô²»Æð£¬ÎÒÎıÊÓÐÏÞ¡£
תÔØÇë×¢Ã÷³ö´¦ ×÷ÕߣºÁõ¶«ÐÅ£¨bitpart£© ÔÎĵØÖ·£º http://www.wodianer.net/article_52_PHP-MVC.html
ÍƼöÐÅÏ¢
- ¡¾ÊÓƵ²¥·Å¡¿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¼ì²â×Ö·û´®±àÂë
ÆÀÂÛ