laravelЧÀÍÌṩÕßÊÇʲô
laravel ÊÇÒ»¿î¿ªÔ´µÄ php ¿ò¼Ü£¬ËüÌṩÁËÒ»ÖÖ¾«Á·¶øÓÅÑŵÄÓï·¨£¬ÒÔ¼°Ðí¶àÓÐÓõÄÁÖÁÖ×Ü×ܵĹ¦Ð§¡£ÔÚʹÓà laravel ¿ª·¢Ó¦ÓóÌÐòʱ£¬ÎÒÃǾ³£ÐèÒª¾ÙÐÐÐí¶àÉèÖúÍЧÀÍÌṩ¡£¶øÕâЩÉèÖúÍЧÀ͵ÄÌṩ¿ÉÒÔͨ¹ý laravel ÖеÄЧÀÍÌṩÕßÀ´¾ÙÐÐÖÎÀí¡£
ÔÚ Laravel ÖУ¬Ð§ÀÍÌṩÕßÊÇÒ»¸öÕÆÎÕͳ³ïÆóÒµ¼¶Ó¦ÓóÌÐòµÄÖ÷Òª¹¤¾ß¡£Ëü¿ÉÒÔ×ÊÖúÎÒÃÇÓÐÓõØÖÎÀí Laravel Ó¦ÓóÌÐòµÄÉèÖúÍÒÀÀµ×¢ÈëµÈʹÃü¡£µ«¹ØÓÚÐí¶à Laravel ³õѧÕ߶øÑÔ£¬Ð§ÀÍÌṩÕߵĿ´·¨ÉÐÓÐЩÉúÊ裬Òò´Ë±¾ÎĽ«ÏêϸÏÈÈÝ Laravel ÖеÄЧÀÍÌṩÕߣ¬²¢ÉîÈë̽ÌÖÆäÊÂÇéÔÀí¡£
ʲôÊÇ Laravel ЧÀÍÌṩÕߣ¿
Laravel ЧÀÍÌṩÕßÊÇÒ»ÖÖÓÃÓÚ×¢²á¡¢Î¬»¤ºÍ×¢ÈëЧÀ͵Ť¾ß¡£ËüΪ Laravel Ó¦ÓóÌÐòÌṩÁËÒ»ÖÖÎÞаµÄÉèÖÃÒªÁ죬²¢×ÊÖúÎÒÃÇ×èÖ¹ÁËÖ±½ÓÐ޸Ŀò¼Ü½¹µã´úÂëµÄΣÏÕ¡£ÔÚ Laravel ÖУ¬Ð§ÀÍÌṩÕßÊǽ«×é¼þ°ó¶¨µ½ÈÝÆ÷ÖеÄÒªº¦²¿·Ö¡£ËüµÄÖ°ÔðÊÇά»¤Ó¦ÓóÌÐòµÄÖÖÖÖÀàʵÀý¡¢½Ó¿ÚºÍÒÀÀµÏ²¢ÖÎÀíËüÃǵÄÉúÃüÖÜÆÚ¡£
¼òÆÓÀ´Ëµ£¬Ð§ÀÍÌṩÕß¾ÍÊÇΪӦÓóÌÐòÌṩЧÀ͵ÄÀà¡£ÕâЩЧÀÍ¿ÉÒÔÊÇÈκι¤¾ß£¬´ÓÊý¾Ý¿âÅþÁ¬µ½µÚÈý·½¿â£¬»¹¿ÉÄÜÊÇ×Ô½ç˵µÄЧÀÍ£¬ºÃ±ÈÓʼþЧÀÍ¡¢Ö§¸¶Ð§À͵ȡ£
Laravel ЧÀÍÌṩÕßµÄÀàÐÍ
ÔÚ Laravel ÖУ¬Ð§ÀÍÌṩÕß¿ÉÒÔ·ÖΪÈýÖÖ²î±ðµÄÀàÐÍ£º
Ó¦ÓóÌÐòЧÀÍÌṩÕß
Ó¦ÓóÌÐòЧÀÍÌṩÕߣ¨Application Service Providers£©ÊÇ Laravel Ó¦ÓóÌÐòµÄÖ÷ҪЧÀÍÌṩÕß¡£ËüÃÇÓÃÓÚÔÚÓ¦ÓóÌÐòÆô¶¯Ê±×¢²áÖÖÖÖЧÀÍ¡£ÈôÊÇÄãµÄÓ¦ÓóÌÐòʹÓÃÁËÐí¶àµÚÈý·½¿â£¬ÄÇôÔÚÓ¦ÓóÌÐòÆô¶¯Ê±»á×¢²áһϵÁеÄЧÀÍÌṩÕßÒÔ¹©Ê¹Óá£
ÔÚ Laravel Ó¦ÓóÌÐòÖУ¬Ã¿¸öÓ¦ÓóÌÐòЧÀÍÌṩÕ߶¼ÐèÒª¼ÌÐø IlluminateSupportServiceProvider Àà¡£±ðµÄ£¬Ã¿¸öÓ¦ÓóÌÐòЧÀÍÌṩÕ߶¼±ØÐèʵÏÖ register() ÒªÁìºÍ boot() ÒªÁì¡£
ÔÚ register() ÒªÁìÖУ¬Ó¦ÓóÌÐòЧÀÍÌṩÕßͨ³£»áÖ÷ÒªÓÃÓÚ×¢²áÌض¨µÄЧÀ͵½ Laravel ÈÝÆ÷ÖС£ÔÚ boot() ÒªÁìÖУ¬Ó¦ÓóÌÐòЧÀÍÌṩÕßͨ³£»áʹÓÃÈκÎ×¢²áµÄЧÀÍÀ´Ö¸µ¼Ó¦ÓóÌÐò¡£
°üЧÀÍÌṩÕß
°üЧÀÍÌṩÕߣ¨Package Service Providers£©ÊÇ Laravel ÖеÄÒ»ÖÖ¿ÉÖØÓõÄ×é¼þ¡£ËüÃǾÍÏñÓ¦ÓóÌÐòЧÀÍÌṩÕߣ¬µ«ÌØÊâÌṩÁËһЩ¿ÉÖØÓÃÐԺͱ㵱ÐÔ¡£ÈôÊÇÄãÕýÔÚ±àд°ü£¬²¢Ï£Íû½«Æä×÷Ϊ composer °ü¶øÐû²¼£¬ÄÇôÇëʹÓðüЧÀÍÌṩÕß¡£
ÔÚ Laravel µÄĬÈÏÎļþ½á¹¹ÖУ¬Ã¿¸ö°üЧÀÍÌṩÕ߶¼Ó¦¸Ã·ÅÔÚ src/ Îļþ¼ÐÏ£¬²¢ÃüÃûΪ ServiceProvider.php¡£Í¬Ñù£¬Ã¿¸ö°üЧÀÍÌṩÕ߶¼±ØÐèʵÏÖ register() ÒªÁìºÍ boot() ÒªÁì¡£
ÖÐÐļþЧÀÍÌṩÕß
ÖÐÐļþЧÀÍÌṩÕߣ¨Middleware Service Providers£©ÊÇ Laravel ÌṩµÄÒ»ÖÖ±ã½ÝµÄÖÐÐļþ×¢²á·½·¨¡£ÖÐÐļþЧÀÍÌṩÕß¿ÉÒÔͨ¹ýÒ»¸ö¼òÆÓµÄÀà½ç˵À´×¢²áËùÓÐÖÐÐļþ£¬¶øÎÞÐèÔÚÓ¦ÓóÌÐò»ò°üЧÀÍÌṩÕßÖÐÐÄ×¢²áÿÆäÖÐÐļþ¡£
ÖÐÐļþЧÀÍÌṩÕß¼ÌÐøÓÚ IlluminateFoundationSupportProvidersMiddlewareServiceProvider£¬¸ÃÀàʵÖÊÉϾÍÊÇÒ»¸öÀ©Õ¹ÁË register ÒªÁìµÄ¼òÆÓ Laravel ЧÀÍÌṩÕß¡£ÓëÆäËûЧÀÍÌṩÕßÒ»Ñù£¬ÖÐÐļþЧÀÍÌṩÕßÒ²¿ÉÒÔʹÓà routeMiddleware ÊôÐÔÀ´×¢²áÖÐÐļþ£¬²¢¿ÉÒÔͨ¹ý $this->app[‘router’]->aliasMiddleware() ÒªÁìÀ´ÎªÖÐÐļþÖ¸¶¨ÓÖÃû¡£
Laravel ЧÀÍÌṩÕßµÄÊÂÇéÔÀí
Laravel µÄЧÀÍÌṩÕßÔÚ¿ò¼ÜÆô¶¯Ê±±»Æô¶¯£¬ËüÔÚÈÝÆ÷ÖÐ×¢²áÁËËùÓеÄЧÀÍ¡£ÔÚЧÀÍÌṩÕß±»×¢²á֮ǰ£¬Ó¦ÓóÌÐòÈκÎʵÑé»á¼ûÕâЩЧÀ͵IJÙ×÷¶¼»áʧ°Ü¡£
ÔÚ¿ò¼ÜÆô¶¯Ê±£¬Laravel »á×Ô¶¯¼ÓÔØËùÓеÄЧÀÍÌṩÕßÀ࣬²¢ÔÚÈÝÆ÷ÖÐ×¢²á¶ÔÓ¦µÄЧÀÍ¡£Laravel ÈÝÆ÷ÊÇÒ»¸ö¾ßÓÐÇ¿Ê¢¹¦Ð§µÄÒÀÀµ×¢ÈëÈÝÆ÷£¬Äܹ»ÈÏÕæʵÀý»¯Àà¡¢ÖÎÀíÀàÖ®¼äµÄÒÀÀµ¹Øϵ£¬²¢ÇÒÄܹ»×Ô¶¯ÆÊÎöºÍ×¢ÈëÀàµÄÒÀÀµÏî¡£
µ±Ò»¸öÀàÐèÒªÒ»¸öÒÀÀµÏîʱ£¬ÈÝÆ÷½«»á×Ô¶¯×¢ÈëËùÇëÇóµÄÒÀÀµÏî¡£ÀýÈ磬ÈôÊÇÄãÐèÒªÒ»¸ö Mailer ÀàµÄʵÀý£¬ÄÇôÈÝÆ÷»á²éÕÒËùÓÐÒÑ×¢²áµ½ÈÝÆ÷µÄЧÀÍÌṩÕߣ¬À´²éÕÒÕâ¸öÀಢʵÀý»¯Ëü¡£ÈôÊÇ Mailer ÀàÐèÒªÆäËûÒÀÀµÏÈÝÆ÷»áͬÑù×Ô¶¯½â¾öÕâЩÒÀÀµÏֱµ½Àà±»ÍêȫʵÀý»¯¡£
ÔÚ register() ÒªÁìÖУ¬Ð§ÀÍÌṩÕßÐèÒª½«Ð§ÀÍ×¢²áµ½ÈÝÆ÷ÖС£Ð§ÀÍ¿ÉÒÔÊÇÈκι¤¾ß£¬´ÓÊý¾Ý¿âÅþÁ¬µ½¾ßÓÐ×Ô½ç˵Âß¼µÄ×Ô½ç˵Àà¡£
ͨ¹ýЧÀÍÌṩÕߣ¬Laravel ÈÝÆ÷¿ÉÒÔ×Ô¶¯ÆÊÎöºÍ×¢ÈëÔÚ×¢²áÕâЩЧÀÍʱÐèÒªµÄÒÀÀµÏî¡£ÕâЩÒÀÀµÏî¿ÉÒÔÊÇÆäËûЧÀÍ¡¢Àà¡¢½Ó¿ÚµÈµÈ¡£Ò»µ©Ó¦ÓóÌÐòÖеÄЧÀÍÌṩÕßÍê³ÉÁËËüÃǵÄ×¢²á£¬É¢²¼ÔÚÓÚÕû¸öÓ¦ÓóÌÐòÖеĸ÷¸öÀ඼¿ÉÒÔÒÀÀÃ÷ÈÕâЩЧÀÍ£¬ÒÔʵÏÖÔ½·¢ËÉÉ¢ñîºÏµÄÓ¦ÓóÌÐò¡£
×ܽá
Laravel ЧÀÍÌṩÕßÊÇÕÆÎÕ Laravel Ó¦ÓóÌÐò×é¼þµÄÒªº¦¹¤¾ß¡£ËüÖÎÀí×ÅÓ¦ÓóÌÐòÖеÄÀàʵÀý¡¢½Ó¿ÚºÍÒÀÀµÏ²¢ÇÒ×ÊÖúÎÒÃÇÓÐÓõØÖÎÀí Laravel Ó¦ÓóÌÐòµÄÉèÖúÍÒÀÀµ×¢ÈëµÈʹÃü¡£ÎÒÃÇ¿ÉÒÔʹÓÃÈýÖÖ²î±ðÀàÐ͵ÄЧÀÍÌṩÕßÀ´ÖÎÀíЧÀÍ£ºÓ¦ÓóÌÐòЧÀÍÌṩÕß¡¢°üЧÀÍÌṩÕߺÍÖÐÐļþЧÀÍÌṩÕß¡£
Ö»¹Ü³õѧÕß¿ÉÄÜÐèÒªÆÆ·ÑһЩʱ¼äÀ´Ã÷ȷЧÀÍÌṩÕßÔõÑùÊÂÇ飬¿ÉÊÇÒ»µ©ÄãÕÆÎÕÁËÕâЩ֪ʶ£¬Ëü½«»á×ÊÖúÄã´ó´ó¼ò»¯¶Ô Laravel Ó¦ÓóÌÐòµÄÖÎÀíºÍά»¤¡£
ÒÔÉϾÍÊÇlaravelЧÀÍÌṩÕßÊÇʲôµÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡