{"id":746,"date":"2025-06-11T22:42:16","date_gmt":"2025-06-11T14:42:16","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/php\/php-application-manual\/laravel\/746.html"},"modified":"2025-06-11T22:42:16","modified_gmt":"2025-06-11T14:42:16","slug":"%e5%a6%82%e4%bd%95%e5%9c%a8-laravel-%e4%b8%ad%e5%ae%9a%e4%b9%89%e8%b7%af%e7%94%b1","status":"publish","type":"my1js","link":"https:\/\/www.zhaozhao123.cn\/php\/my1js\/746.html","title":{"rendered":"\u5982\u4f55\u5728 Laravel \u4e2d\u5b9a\u4e49\u8def\u7531"},"content":{"rendered":"<div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--1\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/dyA-1-400x300.jpg\" alt=\"Bug&#32534;&#35793;&#29422;\" class=\"wp-image-1842\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">Bug&#32534;&#35793;&#29422;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>&#22312; Laravel &#20013;&#65292;&#23450;&#20041;&#36335;&#30001;&#26159;&#26500;&#24314; Web &#24212;&#29992;&#31243;&#24207;&#30340;&#26680;&#24515;&#37096;&#20998;&#12290;&#20197;&#19979;&#26159;&#22914;&#20309;&#22312; Laravel &#20013;&#23450;&#20041;&#36335;&#30001;&#30340;&#22522;&#26412;&#27493;&#39588;&#65306;<\/p>\n<ol>\n<li>\n<p><strong>&#21019;&#24314;&#25511;&#21046;&#22120;<\/strong>&#65306;\n&#39318;&#20808;&#65292;&#20320;&#38656;&#35201;&#21019;&#24314;&#19968;&#20010;&#26032;&#30340;&#25511;&#21046;&#22120;&#26469;&#22788;&#29702;&#36335;&#30001;&#35831;&#27714;&#12290;&#20320;&#21487;&#20197;&#20351;&#29992; <code>make:controller<\/code> &#21629;&#20196;&#26469;&#29983;&#25104;&#25511;&#21046;&#22120;&#12290;<\/p>\n<pre><code class=\"language-bash\">php artisan make:controller ExampleController<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>&#23450;&#20041;&#36335;&#30001;<\/strong>&#65306;\n&#22312; <code>routes\/web.php<\/code> &#25991;&#20214;&#20013;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; <code>Route::get<\/code>, <code>Route::post<\/code>, <code>Route::put<\/code>, <code>Route::delete<\/code> &#31561;&#26041;&#27861;&#26469;&#23450;&#20041;&#36335;&#30001;&#12290;<\/p>\n<pre><code class=\"language-php\">\/\/ &#23450;&#20041;&#19968;&#20010; GET &#36335;&#30001;\nRoute::get('\/example', 'ExampleController@index');\n\n\/\/ &#23450;&#20041;&#19968;&#20010; POST &#36335;&#30001;\nRoute::post('\/example', 'ExampleController@store');<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>&#32465;&#23450;&#25511;&#21046;&#22120;&#26041;&#27861;<\/strong>&#65306;\n&#30830;&#20445;&#25511;&#21046;&#22120;&#26041;&#27861;&#30340;&#21629;&#21517;&#19982;&#36335;&#30001; URL &#21305;&#37197;&#12290;&#20363;&#22914;&#65292;&#22914;&#26524;&#36335;&#30001;&#26159; <code>\/example<\/code>&#65292;&#37027;&#20040;&#25511;&#21046;&#22120;&#20013;&#30340; <code>index<\/code> &#26041;&#27861;&#24212;&#35813;&#36820;&#22238;&#35270;&#22270;&#12290;<\/p>\n<pre><code class=\"language-php\">namespace AppHttpControllers;\n\nuse IlluminateHttpRequest;\n\nclass ExampleController extends Controller\n{\n   public function index()\n   {\n       return view('example.index');\n   }\n\n   public function store(Request $request)\n   {\n       \/\/ &#22788;&#29702;&#34920;&#21333;&#25968;&#25454;\n       $data = $request-&gt;all();\n       \/\/ &#20445;&#23384;&#21040;&#25968;&#25454;&#24211;\n       \/\/ ...\n       return redirect()-&gt;route('example.index');\n   }\n}<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>&#23450;&#20041;&#20013;&#38388;&#20214;<\/strong>&#65288;&#21487;&#36873;&#65289;&#65306;\n&#20320;&#21487;&#20197;&#22312;&#36335;&#30001;&#19978;&#28155;&#21152;&#20013;&#38388;&#20214;&#26469;&#25511;&#21046;&#35775;&#38382;&#26435;&#38480;&#12290;<\/p>\n<pre><code class=\"language-php\">Route::middleware(['auth'])-&gt;group(function () {\n   Route::get('\/admin', 'AdminController@index')-&gt;name('admin.index');\n});<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>&#23450;&#20041;&#36164;&#28304;&#36335;&#30001;<\/strong>&#65288;&#21487;&#36873;&#65289;&#65306;\n&#22914;&#26524;&#20320;&#26377;&#19968;&#20010;&#20855;&#26377;&#22810;&#20010;&#36164;&#28304;&#30340;&#25511;&#21046;&#22120;&#65292;&#21487;&#20197;&#20351;&#29992; <code>resources<\/code> &#25351;&#20196;&#26469;&#31616;&#21270;&#36335;&#30001;&#23450;&#20041;&#12290;<\/p>\n<pre><code class=\"language-bash\">php artisan make:migration create_users_table --table=users\nphp artisan migrate\nphp artisan make:model User\n\nphp artisan make:controller UserController<\/code><\/pre>\n<p>&#22312; <code>UserController<\/code> &#20013;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; <code>resource<\/code> &#26041;&#27861;&#26469;&#23450;&#20041;&#25152;&#26377; CRUD &#25805;&#20316;&#30340;&#36335;&#30001;&#12290;<\/p>\n<pre><code class=\"language-php\">namespace AppHttpControllers;\n\nuse AppModelsUser;\nuse IlluminateHttpRequest;\n\nclass UserController extends Controller\n{\n   public function index()\n   {\n       return view('users.index', ['users' =&gt; User::all()]);\n   }\n\n   public function store(Request $request)\n   {\n       $user = User::create($request-&gt;all());\n       return redirect()-&gt;route('users.index');\n   }\n\n   public function show(User $user)\n   {\n       return view('users.show', ['user' =&gt; $user]);\n   }\n\n   public function edit(User $user)\n   {\n       return view('users.edit', ['user' =&gt; $user]);\n   }\n\n   public function update(Request $request, User $user)\n   {\n       $user-&gt;update($request-&gt;all());\n       return redirect()-&gt;route('users.show', $user);\n   }\n\n   public function destroy(User $user)\n   {\n       $user-&gt;delete();\n       return redirect()-&gt;route('users.index');\n   }\n}<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>&#36890;&#36807;&#20197;&#19978;&#27493;&#39588;&#65292;&#20320;&#21487;&#20197;&#22312; Laravel &#20013;&#25104;&#21151;&#23450;&#20041;&#21644;&#37197;&#32622;&#36335;&#30001;&#12290;&#26681;&#25454;&#20320;&#30340;&#20855;&#20307;&#38656;&#27714;&#65292;&#20320;&#21487;&#20197;&#36827;&#19968;&#27493;&#25193;&#23637;&#21644;&#23450;&#21046;&#36825;&#20123;&#36335;&#30001;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--2\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/zp-400x300.jpg\" alt=\"&#40657;&#26495;Bug&#35762;&#24072;\" class=\"wp-image-1849\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#40657;&#26495;Bug&#35762;&#24072;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<body><h2>&#20171;&#32461;<\/h2><p>Laravel &#26159;&#19968;&#20010;&#22522;&#20110; PHP &#30340;&#24378;&#22823;&#26694;&#26550;&#65292;&#29992;&#20110;&#24320;&#21457; Web &#24212;&#29992;&#31243;&#24207;&#65292;&#24182;&#36981;&#24490;&#27169;&#22411;-&#35270;&#22270;-&#25511;&#21046;&#22120;&#65288;MVC&#65289;&#30340;&#26550;&#26500;&#27169;&#24335;&#12290;&#22312; Laravel &#20013;&#65292;&#36335;&#30001;&#26497;&#20854;&#24378;&#22823;&#65292;&#20026;&#26681;&#25454;&#24212;&#29992;&#31243;&#24207;&#23545; HTTP &#35831;&#27714;&#30340;&#34892;&#20026;&#25552;&#20379;&#20102;&#24179;&#28369;&#30340;&#25509;&#21475;&#12290;&#22312;&#36825;&#31687;&#25945;&#31243;&#20013;&#65292;&#25105;&#20204;&#23558;&#20174;&#22522;&#30784;&#21040;&#39640;&#32423;&#23454;&#36341;&#25351;&#23548;&#24744;&#23450;&#20041; Laravel &#36335;&#30001;&#65292;&#21253;&#25324;&#20195;&#30721;&#31034;&#20363;&#21644;&#35299;&#37322;&#12290;<\/p><h2>&#29702;&#35299; Laravel &#30340;&#36335;&#30001;<\/h2><p>&#36335;&#30001;&#30340;&#22522;&#30784;&#22312;Laravel&#20013;&#30456;&#23545;&#31616;&#21333;&#12290;&#25152;&#26377;Laravel&#30340;&#36335;&#30001;&#37117;&#22312;&#20320;&#30340;route&#25991;&#20214;&#20013;&#23450;&#20041;&#65292;&#36825;&#20123;&#25991;&#20214;&#20301;&#20110;&#24212;&#29992;&#30446;&#24405;&#20013;&#30340;routes&#25991;&#20214;&#22841;&#20869;&#12290;<code>routes<\/code>&#25991;&#20214;&#22841;&#12290;&#26377;&#19981;&#21516;&#30340;&#36335;&#30001;&#25991;&#20214;&#65292;&#29992;&#20110;&#19981;&#21516;&#30340;&#30446;&#30340;&#65292;&#20363;&#22914;&#65306;<code>web.php<\/code>&#22909;&#30340;&#65292;&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<code>api.php<\/code>&#22909;&#30340;&#65292;&#35831;&#21457;&#36865;&#20320;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<code>console.php<\/code>&#21644;&#25105;&#26377;&#20160;&#20040;&#20107;&#21527;&#65311;<code>channels.php<\/code>&#30446;&#21069;&#65292;&#25105;&#20204;&#23558;&#19987;&#27880;&#20110;&#32593;&#39029;&#36335;&#30001;&#12290;<\/p><h3>&#23450;&#20041;&#22522;&#26412;&#36335;&#32447;<\/h3><p>&#26368;&#31616;&#21333;&#30340;&#26041;&#24335;&#26469;&#23450;&#20041;&#36335;&#32447;&#23601;&#26159;&#28155;&#21152;&#19968;&#20010;&#38381;&#21253;&#21040;&#20854;&#20013;&#12290;<code>web.php<\/code>&#25991;&#20214;&#12290;&#36825;&#26159;&#20010;&#22522;&#26412;&#30340;GET&#36335;&#30001;&#65306;<\/p><pre><code>Route::get('\/', function () {    return 'Welcome to my Laravel app!';});<\/code><\/pre><p>&#35813;&#36335;&#30001;&#21709;&#24212;&#24212;&#29992;&#31243;&#24207;&#30340;&#26681;URL&#35831;&#27714;&#65292;&#36820;&#22238;&#25991;&#26412;&ldquo;&#27426;&#36814;&#20351;&#29992;&#25105;&#30340;Laravel&#24212;&#29992;&#65281;&rdquo;&#20320;&#21487;&#20197;&#20026;&#21508;&#31181;HTTP&#21160;&#35789;&#65288;&#22914;POST&#12289;PUT&#12289;DELETE&#31561;&#65289;&#23450;&#20041;&#31867;&#20284;&#30340;&#36335;&#30001;&#12290;<\/p><h3>&#25511;&#21046;&#20013;&#24515;<\/h3><p>&#32780;&#19981;&#26159;&#20351;&#29992;&#38381;&#21253;&#65292;&#20320;&#21487;&#20197;&#23558;&#19968;&#20010;&#36335;&#30001;&#19982;&#25511;&#21046;&#22120;&#30340;&#21160;&#20316;&#20851;&#32852;&#36215;&#26469;&#12290;&#20551;&#35774;&#25105;&#20204;&#26377;&#19968;&#20010;&hellip;&hellip;<code>PageController<\/code>&#29992;&#19968;&#31181;&#26041;&#27861;<code>about<\/code>&#20320;&#22909;&#65281;&#26377;&#20160;&#20040;&#25105;&#21487;&#20197;&#24110;&#21161;&#24744;&#30340;&#21527;&#65311;<\/p><pre><code>Route::get('\/about', 'PageController@about');<\/code><\/pre><p>&#25105;&#20204;&#22312;&#36825;&#37324;&#21578;&#35785;Laravel&#22788;&#29702;GET&#35831;&#27714;&#21040;<code>\/about<\/code>&#36890;&#36807;&#25320;&#25171;<code>about<\/code>&#26041;&#27861;&#26159;&#20351;&#29992;&#20102;&#12290;<code>PageController<\/code>&#22909;&#30340;&#65292;&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><h3>&#36335;&#30001;&#21442;&#25968;<\/h3><p>&#36335;&#30001;&#20063;&#21487;&#20197;&#21253;&#21547;&#21442;&#25968;&#65292;&#36825;&#20123;&#21442;&#25968;&#21487;&#20197;&#36890;&#36807;&#25511;&#21046;&#22120;&#36827;&#34892;&#20256;&#36882;&#65306;<\/p><pre><code>Route::get('\/posts\/{post}', 'PostController@show');<\/code><\/pre><p>&#23545;&#19981;&#36215;&#65292;&#25105;&#19981;&#22826;&#26126;&#30333;&#24744;&#30340;&#38382;&#39064;&#65292;&#35831;&#24744;&#37325;&#26032;&#25551;&#36848;&#19968;&#19979;&#12290;<code>{post}<\/code>&#21344;&#20301;&#31526;&#34920;&#31034;&#23558;&#34987;&#20256;&#36882;&#21040;&#36335;&#30001;&#21442;&#25968;&#20013;&#30340;&#21344;&#20301;&#31526;&#12290;<code>show<\/code>&#26041;&#27861;&#30340;<code>PostController<\/code>&#22909;&#30340;&#65292;&#35831;&#21457;&#36865;&#20320;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><h3>&#21629;&#21517;&#36335;&#30001;<\/h3><p>&#21629;&#21517;&#36335;&#30001;&#20351;&#29983;&#25104;URL&#25110;&#37325;&#23450;&#21521;&#26356;&#21152;&#26041;&#20415;&#12290;&#20197;&#19979;&#26159;&#22914;&#20309;&#21629;&#21517;&#19968;&#20010;&#36335;&#30001;&#30340;&#26041;&#27861;&#65306;<\/p><pre><code>Route::get('\/contact', 'ContactController@show')-&gt;name('contact');<\/code><\/pre><p>&#28982;&#21518;&#65292;&#20320;&#21487;&#20197;&#36890;&#36807;&#21517;&#31216;&#26469;&#24341;&#29992;&#36825;&#20010;&#36335;&#32447;&#12290;<code>route<\/code>&#21151;&#33021;&#65306;<\/p><pre><code>url(route('contact'));<\/code><\/pre><h3>&#20013;&#38388;&#20214;<\/h3><p>&#20013;&#38388;&#20214;&#21487;&#20197;&#24212;&#29992;&#20110;&#36335;&#30001;&#65292;&#20197;&#36807;&#28388;&#36827;&#20837;&#24212;&#29992;&#31243;&#24207;&#30340;HTTP&#35831;&#27714;&#12290;&#20363;&#22914;&#65292;&#20026;&#20102;&#24212;&#29992;&#20013;&#38388;&#20214;&#65292;&#24744;&#21487;&#20197;&#20351;&#29992;apply()&#26041;&#27861;&#12290;<code>auth<\/code>&#22312;&#36335;&#30001;&#19978;&#28155;&#21152;&#20013;&#38388;&#20214;&#65306;<\/p><pre><code>Route::get('\/profile', 'UserController@show')-&gt;middleware('auth');<\/code><\/pre><p>&#36825;&#30830;&#20445;&#29992;&#25143;&#24517;&#39035;&#36523;&#20221;&#39564;&#35777;&#21518;&#25165;&#33021;&#35775;&#38382;&#12290;<code>\/profile<\/code>&#36335;&#32447;&#12290;<\/p><h2>&#39640;&#32423;&#36335;&#30001;<\/h2><h3>&#36335;&#32447;&#32452;<\/h3><p>&#36335;&#30001;&#32452;&#20801;&#35768;&#24744;&#20849;&#20139;&#36335;&#30001;&#23646;&#24615;&#65292;&#20363;&#22914;&#20013;&#38388;&#20214;&#25110;&#21629;&#21517;&#31354;&#38388;&#65292;&#32780;&#26080;&#38656;&#20887;&#20313;&#65306;<\/p><pre><code>Route::middleware(['auth'])-&gt;group(function () {    Route::get('\/dashboard', 'DashboardController@index');    Route::get('\/account', 'AccountController@index');});<\/code><\/pre><h3>&#36335;&#30001;&#27169;&#22411;&#32465;&#23450;<\/h3><p>&#20351;&#29992;&#36335;&#30001;&#27169;&#22411;&#32465;&#23450;&#65292;&#20320;&#21487;&#20197;&#33258;&#21160;&#35299;&#26512;&#27169;&#22411;&#23454;&#20363;&#30340;ID&#12290;Laravel&#31070;&#22855;&#22320;&#27880;&#20837;&#20102;&#23545;&#24212;&#30340;&#27169;&#22411;&#23454;&#20363;&#65306;<\/p><pre><code>Route::get('\/posts\/{post}', function (AppPost $post) {    return view('post.show', ['post' =&gt; $post]);});<\/code><\/pre><p>&#35831;&#27880;&#24847;&#65292;&#22312;&#20320;&#30340;&#36335;&#30001;&#38381;&#21253;&#25110;&#25511;&#21046;&#22120;&#26041;&#27861;&#30340;&#27169;&#22411;&#31867;&#22411;&#25552;&#31034;&#65288;type-hinting&#65289;&#20013;&#20351;&#29992;&#65292;Laravel &#20250;&#22788;&#29702;&#21097;&#19979;&#30340;&#20107;&#24773;&#12290;<\/p><h3>&#23376;&#22495;&#36335;&#30001;<\/h3><p>Laravel &#20801;&#35768;&#24744;&#36731;&#26494;&#22788;&#29702;&#23376;&#22495;&#21517;&#30340;&#36335;&#30001;&#12290;&#24744;&#21487;&#20197;&#20351;&#29992;&#22495;&#23646;&#24615;&#23450;&#20041;&#19968;&#20010;&#36335;&#30001;&#32452;&#65306;<\/p><pre><code>Route::domain('{account}.myapp.com')-&gt;group(function () {    Route::get('user\/{id}', function ($account, $id) {        \/\/ ...    });});<\/code><\/pre><p>&#36825;&#31181;&#36335;&#30001;&#26041;&#24335;&#20250;&#23558;&#35831;&#27714;&#36716;&#21457;&#21040;&#30456;&#24212;&#30340;&#23376;&#22495;&#21517;&#65292;&#21516;&#26102;&#20026;&#36134;&#25143;&#21644;ID&#25552;&#20379;&#21464;&#37327;&#12290;<\/p><h3>&#38480;&#27969;&#38480;&#21046;<\/h3><p>Laravel&#30340;&#36335;&#30001;&#26694;&#26550;&#21253;&#25324;&#38480;&#21046;&#35831;&#27714;&#36895;&#29575;&#30340;&#21151;&#33021;&#12290;&#20320;&#21487;&#20197;&#25351;&#23450;&#35831;&#27714;&#30340;&#25968;&#37327;&#21644;&#26102;&#38388;&#33539;&#22260;&#65306;<\/p><pre><code>Route::middleware('auth:api', 'throttle:60,1')-&gt;group(function () {    \/\/ API routes that are rate-limited});<\/code><\/pre><h3>&#36164;&#28304;&#25511;&#21046;&#22120;<\/h3><p>&#36164;&#28304;&#25511;&#21046;&#22120;&#20351;&#24471;&#22788;&#29702;&#36164;&#28304;&#30340;CRUD&#25805;&#20316;&#21464;&#24471;&#23481;&#26131;&#12290;&#20320;&#21487;&#20197;&#20351;&#29992;Artisan&#29983;&#25104;&#19968;&#20010;&#36164;&#28304;&#25511;&#21046;&#22120;&#65306;<\/p><pre><code>php artisan make:controller PhotoController --resource<\/code><\/pre><p>&#28982;&#21518;&#65292;&#20320;&#21487;&#20197;&#27880;&#20876;&#19968;&#20010;&#36164;&#28304;&#20016;&#23500;&#30340;&#36335;&#32447;&#12290;<code>routes\/web.php<\/code>: &#20320;&#22909;&#65281;&#26377;&#20160;&#20040;&#25105;&#21487;&#20197;&#24110;&#21161;&#24744;&#30340;&#21527;&#65311;<\/p><pre><code>Route::resource('photos', 'PhotoController');<\/code><\/pre><p>&#36825;&#20250;&#22312;&#21333;&#20010;&#21629;&#20196;&#20013;&#20026;&#24744;&#30340;&#36164;&#28304;&#21019;&#24314;&#25152;&#26377;&#24517;&#35201;&#30340;&#36335;&#30001;&#12290;<\/p><h2>&#32467;&#35770;<\/h2><p>Laravel&#30340;&#36335;&#30001;&#31995;&#32479;&#30452;&#35266;&#19988;&#28789;&#27963;&#65292;&#20801;&#35768;&#24744;&#23450;&#20041;&#21709;&#24212;&#20219;&#20309;HTTP&#21160;&#35789;&#30340;&#36335;&#30001;&#12290;&#28165;&#26224;&#30340;&#32422;&#23450;&#12289;&#20013;&#38388;&#20214;&#38598;&#25104;&#12289;&#36335;&#30001;&#20998;&#32452;&#12289;&#23376;&#22495;&#21517;&#36335;&#30001;&#21644;&#36895;&#29575;&#38480;&#21046;&#25552;&#20379;&#20102;&#24378;&#22823;&#30340;&#24320;&#21457;&#24037;&#20855;&#38598;&#12290;&#29702;&#35299;&#24182;&#21033;&#29992;&#36825;&#20123;&#21151;&#33021;&#23558;&#26174;&#33879;&#22686;&#24378;&#24744;&#30340;Laravel&#24212;&#29992;&#31243;&#24207;&#30340;&#21151;&#33021;&#24615;&#21644;&#23433;&#20840;&#24615;&#12290;<\/p><\/body>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--3\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/xygcfznnzczhsdmwydzhsmzzzmddnq-400x300.jpg\" alt=\"&#38271;&#24037;&#30721;&#22900;1523\" class=\"wp-image-2906\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#38271;&#24037;&#30721;&#22900;1523<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>&#22312; Laravel &#20013;&#23450;&#20041;&#36335;&#30001;&#26159;&#36890;&#36807;&#21019;&#24314;&#25511;&#21046;&#22120;&#21644;&#20351;&#29992;&#36335;&#30001;&#25511;&#21046;&#22120;&#30340;&#26041;&#27861;&#26469;&#23436;&#25104;&#30340;&#12290;&#20197;&#19979;&#26159;&#22914;&#20309;&#22312; Laravel &#20013;&#23450;&#20041;&#36335;&#30001;&#30340;&#22522;&#26412;&#27493;&#39588;&#65306;<\/p>\n<ol>\n<li>\n<p>&#21019;&#24314;&#19968;&#20010;&#26032;&#30340; Laravel &#24212;&#29992;&#65306;&#39318;&#20808;&#65292;&#20320;&#38656;&#35201;&#21019;&#24314;&#19968;&#20010;&#26032;&#30340; Laravel &#24212;&#29992;&#24182;&#23433;&#35013;&#23427;&#12290;<\/p>\n<\/li>\n<li>\n<p>&#23433;&#35013;&#36335;&#30001;&#25511;&#21046;&#22120;&#65306;&#22312; Laravel 5.x &#21450;&#26356;&#39640;&#29256;&#26412;&#20013;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; <code>php artisan make:controller YourControllerName<\/code> &#21629;&#20196;&#26469;&#21019;&#24314;&#19968;&#20010;&#26032;&#30340;&#25511;&#21046;&#22120;&#12290;&#20363;&#22914;&#65292;&#22914;&#26524;&#20320;&#35201;&#21019;&#24314;&#19968;&#20010;&#21517;&#20026; &#8220;MyController&#8221; &#30340;&#26032;&#25511;&#21046;&#22120;&#65292;&#20320;&#20250;&#36755;&#20837;&#65306;<\/p>\n<pre><code>php artisan make:controller MyController<\/code><\/pre>\n<\/li>\n<li>\n<p>&#21019;&#24314;&#36335;&#30001;&#25991;&#20214;&#65306;&#22312;&#20320;&#30340;&#24212;&#29992;&#30340; <code>app\/Http\/Controllers<\/code> &#30446;&#24405;&#19979;&#65292;&#25171;&#24320;&#26032;&#30340;&#25511;&#21046;&#22120;&#25991;&#20214;&#65288;&#22914; <code>MyController.php<\/code>&#65289;&#65292;&#28982;&#21518;&#28155;&#21152;&#36335;&#30001;&#26041;&#27861;&#12290;<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\nnamespace AppHttpControllers;\n\nuse IlluminateRoutingController;\nuse IlluminateHttpRequest;\n\nclass MyController extends Controller\n{\n   public function index()\n   {\n       return view('index');\n   }\n}<\/code><\/pre>\n<\/li>\n<li>\n<p>&#22312; <code>routes\/web.php<\/code> &#25991;&#20214;&#20013;&#37197;&#32622;&#36335;&#30001;&#65306;&#25509;&#19979;&#26469;&#65292;&#20320;&#38656;&#35201;&#23558;&#36825;&#20123;&#36335;&#30001;&#28155;&#21152;&#21040;&#20320;&#30340;&#24212;&#29992;&#30340;&#36335;&#30001;&#25991;&#20214;&#20013;&#12290;&#36825;&#36890;&#24120;&#26159;&#22312; <code>config\/app.php<\/code> &#25991;&#20214;&#20013;&#30340; <code>route<\/code> &#37197;&#32622;&#22359;&#20013;&#23436;&#25104;&#30340;&#12290;<\/p>\n<pre><code class=\"language-php\">Route::get('\/', 'MyController@index')-&gt;name('home');<\/code><\/pre>\n<\/li>\n<li>\n<p>&#30830;&#20445;&#24744;&#30340;&#24212;&#29992;&#31243;&#24207;&#24050;&#27491;&#30830;&#23433;&#35013;&#65292;&#24182;&#19988;&#24744;&#24050;&#32463;&#21551;&#29992;&#20102;&#36335;&#30001;&#26381;&#21153;&#12290;&#26368;&#21518;&#19968;&#27493;&#23601;&#26159;&#36816;&#34892;&#24744;&#30340;&#24212;&#29992;&#31243;&#24207;&#24182;&#26597;&#30475;&#36335;&#30001;&#26159;&#21542;&#24037;&#20316;&#27491;&#24120;&#12290;<\/p>\n<\/li>\n<\/ol>\n<p>&#36825;&#26159;&#19968;&#20010;&#31616;&#21333;&#30340;&#20363;&#23376;&#65292;&#20294;Laravel&#25552;&#20379;&#20102;&#35768;&#22810;&#20854;&#20182;&#21151;&#33021;&#65292;&#22914; URL &#27169;&#26495;&#21305;&#37197;&#22120;&#12289;&#36335;&#30001;&#21442;&#25968;&#31561;&#65292;&#21487;&#20197;&#36827;&#19968;&#27493;&#23450;&#21046;&#24744;&#30340;&#36335;&#30001;&#12290;&#27492;&#22806;&#65292;&#24744;&#21487;&#20197;&#20351;&#29992; Laravel &#30340; Blade &#27169;&#26495;&#24341;&#25806;&#26469;&#29983;&#25104;&#21160;&#24577;&#30340; HTML &#39029;&#38754;&#65292;&#20174;&#32780;&#23454;&#29616;&#26356;&#22797;&#26434;&#30340;&#36335;&#30001;&#38656;&#27714;&#12290;<\/p>\n<pre><code class=\"language-php\">\/\/ app\/Http\/Kernel.php\nprotected $routeMiddleware = [\n    \/\/ ...\n    'auth' =&gt; AppHttpMiddlewareAuthenticate::class,\n    'guest' =&gt; AppHttpMiddlewareRedirectIfAuthenticated::class,\n];\n<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65292;&#25105;&#20204;&#21019;&#24314;&#20102;&#19968;&#20010;&#21517;&#20026; <code>auth<\/code> &#30340;&#20013;&#38388;&#20214;&#65292;&#29992;&#20110;&#39564;&#35777;&#29992;&#25143;&#36523;&#20221;&#12290;&#24403;&#35775;&#38382;&#20219;&#20309;&#26410;&#25480;&#26435;&#30340;&#39029;&#38754;&#26102;&#65292;&#36825;&#20010;&#20013;&#38388;&#20214;&#20250;&#34987;&#35302;&#21457;&#65292;&#25552;&#31034;&#29992;&#25143;&#36827;&#34892;&#30331;&#24405;&#12290;<\/p>\n<p>&#24076;&#26395;&#36825;&#20123;&#20449;&#24687;&#23545;&#20320;&#26377;&#25152;&#24110;&#21161;&#65281;&#22914;&#26524;&#20320;&#26377;&#20219;&#20309;&#30097;&#38382;&#65292;&#35831;&#38543;&#26102;&#25552;&#38382;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Bug&#32534;&#35793;&#29422; &#22312; Laravel &#20013;&#65292;&#23450;&#20041;&#36335;&#30001;&#26159;&#26500;&#24314; Web &#24212;&#29992;&#31243;&#24207;&#038;#3034..<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false},"tags":[],"my1js2nav":[44],"tuisongtax":[],"class_list":["post-746","my1js","type-my1js","status-publish","hentry","my1js2nav-laravel"],"acf":{"qian_art_seotitle":"","qian_art_seotitle_source":{"label":"SEO\u6807\u9898","type":"text","formatted_value":""},"qian_art_seokws":"","qian_art_seokws_source":{"label":"SEO\u5173\u952e\u8bcd","type":"text","formatted_value":""},"qian_art_stzhong":"","qian_art_stzhong_source":{"label":"\u4e2d | \u77ed\u6807\u9898","type":"text","formatted_value":""}},"_links":{"self":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js\/746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js"}],"about":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/types\/my1js"}],"author":[{"embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/users\/1"}],"wp:attachment":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/media?parent=746"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tags?post=746"},{"taxonomy":"my1js2nav","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js2nav?post=746"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tuisongtax?post=746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}