{"id":955,"date":"2025-06-12T03:31:11","date_gmt":"2025-06-11T19:31:11","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/php\/php-application-manual\/laravel\/955.html"},"modified":"2025-06-12T03:31:11","modified_gmt":"2025-06-11T19:31:11","slug":"eloquent%ef%bc%9a%e5%a6%82%e4%bd%95%e5%b0%86%e6%9f%a5%e8%af%a2%e7%bb%93%e6%9e%9c%e8%bd%ac%e6%8d%a2%e4%b8%bajson","status":"publish","type":"my1js","link":"https:\/\/www.zhaozhao123.cn\/php\/my1js\/955.html","title":{"rendered":"Eloquent\uff1a\u5982\u4f55\u5c06\u67e5\u8be2\u7ed3\u679c\u8f6c\u6362\u4e3aJSON"},"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>Eloquent &#26159; Laravel &#26694;&#26550;&#20013;&#30340;&#19968;&#20010;&#38750;&#24120;&#24378;&#22823;&#30340; ORM&#65288;&#23545;&#35937;&#20851;&#31995;&#26144;&#23556;&#65289;&#65292;&#23427;&#20351;&#24471;&#25968;&#25454;&#24211;&#25805;&#20316;&#21464;&#24471;&#24322;&#24120;&#31616;&#21333;&#12290;&#35201;&#23558; Eloquent &#26597;&#35810;&#32467;&#26524;&#36716;&#25442;&#20026; JSON &#26684;&#24335;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; <code>toJson<\/code> &#26041;&#27861;&#12290;&#20197;&#19979;&#26159;&#19968;&#20010;&#31034;&#20363;&#65292;&#23637;&#31034;&#20102;&#22914;&#20309;&#20351;&#29992; Eloquent &#36827;&#34892;&#26597;&#35810;&#24182;&#23558;&#20854;&#32467;&#26524;&#36716;&#25442;&#20026; JSON&#65306;<\/p>\n<p>&#20551;&#35774;&#25105;&#20204;&#26377;&#19968;&#20010;&#21517;&#20026; <code>User<\/code> &#30340;&#27169;&#22411;&#65292;&#24182;&#19988;&#25105;&#20204;&#24819;&#35201;&#33719;&#21462;&#25152;&#26377;&#29992;&#25143;&#30340;&#20449;&#24687;&#65292;&#24182;&#23558;&#20854;&#36716;&#25442;&#20026; JSON &#26684;&#24335;&#12290;<\/p>\n<ol>\n<li>&#39318;&#20808;&#65292;&#30830;&#20445;&#20320;&#24050;&#32463;&#21019;&#24314;&#20102; <code>User<\/code> &#27169;&#22411;&#12290;&#22914;&#26524;&#27809;&#26377;&#65292;&#21487;&#20197;&#20351;&#29992; Artisan &#21629;&#20196;&#26469;&#29983;&#25104;&#65306;<\/li>\n<\/ol>\n<pre><code class=\"language-bash\">php artisan make:model User<\/code><\/pre>\n<ol start=\"2\">\n<li>&#22312; <code>User<\/code> &#27169;&#22411;&#20013;&#23450;&#20041;&#20102;&#19968;&#20010;&#26597;&#35810;&#26041;&#27861;&#65292;&#20363;&#22914; <code>allAsJson<\/code>&#65292;&#29992;&#20110;&#36820;&#22238;&#25152;&#26377;&#29992;&#25143;&#30340; JSON &#26684;&#24335;&#25968;&#25454;&#65306;<\/li>\n<\/ol>\n<pre><code class=\"language-php\">namespace AppModels;\n\nuse IlluminateDatabaseEloquentModel;\n\nclass User extends Model\n{\n    public function allAsJson()\n    {\n        return $this-&gt;select('id', 'name', 'email')-&gt;get()-&gt;toArray();\n    }\n}<\/code><\/pre>\n<ol start=\"3\">\n<li>&#29616;&#22312;&#65292;&#20320;&#21487;&#20197;&#36890;&#36807;&#35843;&#29992;&#36825;&#20010;&#26041;&#27861;&#26469;&#33719;&#21462;&#25152;&#26377;&#29992;&#25143;&#30340; JSON &#25968;&#25454;&#65306;<\/li>\n<\/ol>\n<pre><code class=\"language-php\">$users = User::allAsJson();\n\necho json_encode($users, JSON_PRETTY_PRINT);<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#31034;&#20363;&#20013;&#65292;<code>allAsJson<\/code> &#26041;&#27861;&#20351;&#29992; <code>select<\/code> &#26041;&#27861;&#36873;&#25321;&#38656;&#35201;&#30340;&#23383;&#27573;&#65292;&#24182;&#20351;&#29992; <code>get<\/code> &#26041;&#27861;&#33719;&#21462;&#25152;&#26377;&#35760;&#24405;&#12290;&#28982;&#21518;&#65292;&#25105;&#20204;&#23558;&#36825;&#20123;&#35760;&#24405;&#36716;&#25442;&#20026;&#25968;&#32452;&#65292;&#24182;&#20351;&#29992; <code>json_encode<\/code> &#20989;&#25968;&#23558;&#23427;&#20204;&#36716;&#25442;&#20026; JSON &#26684;&#24335;&#12290;<\/p>\n<p>&#35831;&#27880;&#24847;&#65292;<code>toArray<\/code> &#26041;&#27861;&#20250;&#33258;&#21160;&#22788;&#29702;&#20851;&#32852;&#20851;&#31995;&#65292;&#24182;&#36820;&#22238;&#19968;&#20010;&#21253;&#21547;&#25152;&#26377;&#23884;&#22871;&#25968;&#25454;&#30340;&#23545;&#35937;&#25968;&#32452;&#12290;&#22914;&#26524;&#20320;&#21482;&#24819;&#33719;&#21462;&#31616;&#21333;&#30340;&#25968;&#32452;&#26684;&#24335;&#65292;&#21487;&#20197;&#32771;&#34385;&#20351;&#29992; <code>only<\/code> &#25110; <code>pluck<\/code> &#26041;&#27861;&#65306;<\/p>\n<pre><code class=\"language-php\">$usersArray = User::only(['id', 'name'])-&gt;get()-&gt;toArray();\necho json_encode($usersArray, JSON_PRETTY_PRINT);\n\n$emails = User::pluck('email');\necho json_encode($emails, JSON_PRETTY_PRINT);<\/code><\/pre>\n<p>&#36825;&#20123;&#31034;&#20363;&#23637;&#31034;&#20102;&#22914;&#20309;&#20351;&#29992; Eloquent &#23558;&#26597;&#35810;&#32467;&#26524;&#36716;&#25442;&#20026; JSON &#26684;&#24335;&#65292;&#24182;&#25552;&#20379;&#20102;&#20960;&#31181;&#19981;&#21516;&#30340;&#26041;&#27861;&#26469;&#23454;&#29616;&#36825;&#19968;&#30446;&#26631;&#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>&#22312;&#20351;&#29992;Laravel&#24320;&#21457;&#24212;&#29992;&#31243;&#24207;&#26102;&#65292;&#36890;&#36807;Eloquent ORM&#21487;&#20197;&#26041;&#20415;&#22320;&#19982;&#25968;&#25454;&#24211;&#36827;&#34892;&#20132;&#20114;&#12290;Eloquent&#20801;&#35768;&#26500;&#24314;&#31616;&#27905;&#30340;&#26597;&#35810;&#24182;&#25552;&#20379;ORM&#21151;&#33021;&#65292;&#36825;&#20123;&#21151;&#33021;&#19982;&#25968;&#25454;&#24211;&#26080;&#32541;&#38598;&#25104;&#12290;&#32463;&#24120;&#38656;&#35201;&#30340;&#19968;&#20010;&#29305;&#24449;&#26159;&#22312;&#26597;&#35810;&#32467;&#26524;&#36716;&#25442;&#20026;JSON&#26684;&#24335;&#65292;&#36825;&#23545;&#20110;API&#24320;&#21457;&#21644;&#22788;&#29702;&#32593;&#39029;&#24212;&#29992;&#20013;&#30340;AJAX&#35831;&#27714;&#29305;&#21035;&#26377;&#29992;&#12290;<\/p><p>&#22312;&#26412;&#25945;&#31243;&#20013;&#65292;&#25105;&#20204;&#23558;&#25506;&#32034;&#22810;&#31181;&#23558;Eloquent&#26597;&#35810;&#32467;&#26524;&#36716;&#25442;&#20026;JSON&#30340;&#26041;&#27861;&#12290;&#25105;&#20204;&#19981;&#20165;&#20250;&#28085;&#30422;&#22522;&#30784;&#20869;&#23481;&#65292;&#36824;&#20250;&#28145;&#20837;&#25506;&#35752;&#19968;&#20123;&#39640;&#32423;&#22330;&#26223;&#21644;&#26368;&#20339;&#23454;&#36341;&#12290;<\/p><h2>&#36820;&#22238;&#30340;&#27169;&#22411;&#21644;&#38598;&#21512;&#20197;JSON&#26684;&#24335;&#36820;&#22238;&#12290;<\/h2><p>&#23558;&#26597;&#35810;&#32467;&#26524;&#36716;&#25442;&#20026;JSON&#30340;&#26368;&#31616;&#21333;&#26041;&#27861;&#26159;&#22312;&#36335;&#30001;&#25110;&#25511;&#21046;&#22120;&#20013;&#36820;&#22238;&#19968;&#20010;Eloquent&#27169;&#22411;&#25110;&#38598;&#21512;&#12290;Laravel&#22312;&#21019;&#24314;&#21709;&#24212;&#26102;&#20250;&#33258;&#21160;&#23558;&#27169;&#22411;&#24207;&#21015;&#21270;&#20026;JSON&#12290;<\/p><pre><code>\/\/ Fetch a model instance\n$book = Book::find(1);\n\n\/\/ Return a JSON response containing the model data\nreturn response()-&gt;json($book);\n<\/code><\/pre><p>Eloquent&#38598;&#21512;&#22312;&#36820;&#22238;&#33258;&#23450;&#20041;&#36335;&#30001;&#25110;&#25511;&#21046;&#22120;&#26102;&#65292;&#20063;&#20250;&#33258;&#21160;&#36716;&#25442;&#20026;JSON&#26684;&#24335;&#65306;<\/p><pre><code>\/\/ Fetch all books\n$books = Book::all();\n\n\/\/ Return a JSON response containing the collection\nreturn response()-&gt;json($books);\n<\/code><\/pre><h2>&#20351;&#29992;toJson&#26041;&#27861;<\/h2><p>&#31616;&#27905;&#30340;&#27169;&#22411;&#21644;&#38598;&#21512;&#25552;&#20379;&#20102;&#19968;&#31181;&#20248;&#38597;&#30340;&#26041;&#24335;&#26469;&#34920;&#31034;&#25968;&#25454;&#65292;&#20351;&#24471;&#22312;&#22788;&#29702;&#23545;&#35937;&#21644;&#20851;&#32852;&#20851;&#31995;&#26102;&#26356;&#21152;&#23481;&#26131;&#12290;<code>toJson<\/code>&#35813;&#26041;&#27861;&#23558;&#26597;&#35810;&#32467;&#26524;&#36716;&#25442;&#20026;JSON&#23383;&#31526;&#20018;&#12290;&#20320;&#21487;&#20197;&#36825;&#26679;&#20351;&#29992;&#23427;&#65306;<\/p><pre><code>\/\/ $book is an instance of an Eloquent model\n$bookJson = $book-&gt;toJson();\n\n\/\/ Echo the JSON string\necho $bookJson;\n<\/code><\/pre><p>&#35813;&#26041;&#27861;&#36824;&#20801;&#35768;&#25351;&#23450;JSON&#32534;&#30721;&#36873;&#39033;&#65292;&#20363;&#22914;JSON_PRETTY_PRINT&#65306;<\/p><pre><code>\/\/ Convert to pretty-printed JSON\n$bookJson = $book-&gt;toJson(JSON_PRETTY_PRINT);\n\n\/\/ Display the JSON\necho $bookJson;\n<\/code><\/pre><h2>&#19982;&#36164;&#28304;&#31867;&#24037;&#20316;<\/h2><p>&#24403;&#20320;&#38656;&#35201;&#23545;JSON&#32467;&#26500;&#36827;&#34892;&#31934;&#32454;&#25511;&#21046;&#26102;&#65292;Laravel&#30340;&#36164;&#28304;&#31867;&#38750;&#24120;&#26377;&#29992;&#12290;&#20320;&#21487;&#20197;&#21019;&#24314;&#19968;&#20010;&#36164;&#28304;&#26469;&#23558;Eloquent&#27169;&#22411;&#36716;&#25442;&#20026;&#25968;&#32452;&#12290;&#28982;&#21518;&#65292;&#36825;&#20010;&#25968;&#32452;&#20250;&#33258;&#21160;&#34987;&#36716;&#25442;&#20026;JSON&#24182;&#22312;&#20174;&#36335;&#30001;&#25110;&#25511;&#21046;&#22120;&#36820;&#22238;&#26102;&#20351;&#29992;&#12290;<\/p><p>&#20197;&#19979;&#26159;&#21019;&#24314;&#31616;&#21333;&#36164;&#28304;&#30340;&#27493;&#39588;&#65306;<\/p><pre><code>php artisan make:resource BookResource\n<\/code><\/pre><p>&#19968;&#26086;&#21019;&#24314;&#65292;&#23601;&#21487;&#20197;&#23450;&#20041;&#36716;&#25442;&#12290;<code>toArray<\/code>&#36164;&#28304;&#26041;&#27861;&#65306;<\/p><pre><code>class BookResource extends JsonResource\n{\n    public function toArray($request)\n    {\n        return [\n            'id' =&gt; $this-&gt;id,\n            'title' =&gt; $this-&gt;title,\n            'author' =&gt; $this-&gt;author,\n            \/\/ other fields...\n        ];\n    }\n}\n<\/code><\/pre><p>&#35201;&#24402;&#36824;&#19968;&#26412;&#21333;&#26412;&#20070;&#65306;<\/p><pre><code>$book = Book::find(1);\nreturn new BookResource($book);\n<\/code><\/pre><p>&#23545;&#20110;&#19968;&#26412;&#25110;&#22810;&#26412;&#22270;&#20070;&#30340;&#38598;&#21512;&#65306;<\/p><pre><code>$books = Book::all();\nreturn BookResource::collection($books);\n<\/code><\/pre><h2>&#22788;&#29702;&#20851;&#31995;&#21644;&#20998;&#39029;&#25805;&#20316;<\/h2><p>&#36890;&#24120;&#24773;&#20917;&#19979;&#65292;Eloquent &#26597;&#35810;&#28041;&#21450;&#20851;&#31995;&#25110;&#20998;&#39029;&#12290;&#20197;&#19979;&#26159;&#22788;&#29702;&#36825;&#20123;&#22330;&#26223;&#30340;&#26041;&#27861;&#65306;<\/p><h3>&#19982;&#20851;&#31995;<\/h3><p>&#22914;&#26524;&#20070;&#26377;&#19968;&#20010;&#20851;&#31995;&#65292;&#27604;&#22914;&ldquo;&#35780;&#35770;&rdquo;&#20851;&#31995;&#65292;&#37027;&#20040;&#22312;&#24744;&#30340;&#22238;&#22797;&#20013;&#24212;&#35813;&#21253;&#21547;&#36825;&#20123;&#20449;&#24687;&#12290;<\/p><pre><code>return new BookResource($book-&gt;load('reviews'));\n<\/code><\/pre><h3>&#20351;&#29992;&#20998;&#39029;&#12290;<\/h3><p>&#22914;&#26524;&#20351;&#29992;&#20998;&#39029;&#65292;&#36820;&#22238;&#20998;&#39029;&#21518;&#30340;&#32467;&#26524;&#22312;&#21709;&#24212;&#20013;&#65306;<\/p><pre><code>$books = Book::paginate(10);\nreturn BookResource::collection($books);\n<\/code><\/pre><p>&#20998;&#39029;&#32467;&#26524;&#25552;&#20379;&#39069;&#22806;&#30340;&#20803;&#20449;&#24687;&#65292;&#22914;&#24403;&#21069;&#39029;&#38754;&#12289;&#24635;&#39029;&#38754;&#25968;&#21644;&#23548;&#33322;&#38142;&#25509;&#12290;<\/p><h2>API &#36164;&#28304;&#21709;&#24212;<\/h2><p>&#22914;&#26524;&#20320;&#20351;&#29992;&#30340;&#26159;Laravel&#30340;API&#36335;&#30001;&#65292;&#21487;&#20197;&#36820;&#22238;API&#36164;&#28304;&#21709;&#24212;&#65306;<\/p><pre><code>use IlluminateHttpResourcesJsonJsonResource;\n\n\/\/... within controller method:\n\n$books = Book::all();\nreturn JsonResource::collection($books);\n<\/code><\/pre><p>API &#36164;&#28304;&#21709;&#24212;&#20250;&#33258;&#21160;&#35774;&#32622;&#36866;&#24403;&#30340;&#21709;&#24212;&#22836;&#65292;&#20197;&#22788;&#29702; JSON &#20869;&#23481;&#12290;<\/p><h2>&#23450;&#21046;JSON&#21709;&#24212;<\/h2><p>&#20026;&#20102;&#20840;&#23616;&#20462;&#25913;JSON&#21709;&#24212;&#25110;&#28155;&#21152;&#20803;&#20449;&#24687;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992;&#12290;<code>with<\/code>&#26041;&#27861;&#25552;&#20379;&#22312;&#38598;&#21512;&#25110;<code>additional<\/code>&#26041;&#27861;&#29992;&#20110;&#36164;&#28304;&#12290;<\/p><pre><code>return (new BookResource($book))-&gt;additional(['meta' =&gt; [ 'version' =&gt; '1.0' ]]);\n<\/code><\/pre><h2>&#32467;&#35770;&#12290;<\/h2><p>&#20351;&#29992;Laravel&#20013;&#30340;Eloquent&#26597;&#35810;&#32467;&#26524;&#36716;&#25442;&#20026;JSON&#38750;&#24120;&#31616;&#21333;&#65292;&#24471;&#30410;&#20110;&#20854;&#20869;&#32622;&#30340;JSON&#24207;&#21015;&#21270;&#25903;&#25345;&#12290;&#20174;&#36820;&#22238;&#27169;&#22411;&#21644;&#38598;&#21512;&#20316;&#20026;JSON&#30340;&#22522;&#26412;&#21151;&#33021;&#65292;&#21040;Eloquent&#36164;&#28304;&#31867;&#25552;&#20379;&#30340;&#25193;&#23637;&#21151;&#33021;&#65292;Laravel&#20026;&#20320;&#25552;&#20379;&#20102;&#24378;&#22823;&#30340;&#24037;&#20855;&#38598;&#26469;&#26681;&#25454;API&#28040;&#36153;&#21644;&#21069;&#31471;&#24212;&#29992;&#30340;&#38656;&#27714;&#22609;&#36896;&#25968;&#25454;&#12290;<\/p><p>&#32487;&#32493;&#24320;&#21457;&#20196;&#20154;&#24778;&#21497;&#30340;&#21151;&#33021;&#65292;&#36827;&#19968;&#27493;&#25506;&#32034;Laravel&#30340;Eloquent ORM&#30340;&#24378;&#22823;&#21151;&#33021;&#65281;<\/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>&#35201;&#23558;&#26597;&#35810;&#32467;&#26524;&#36716;&#25442;&#20026; JSON &#26684;&#24335;&#65292;&#20320;&#38656;&#35201;&#20351;&#29992; PHP &#30340; ORM&#65288;&#23545;&#35937;&#20851;&#31995;&#26144;&#23556;&#65289;&#24211;&#65292;&#22914; Eloquent&#12290;&#20197;&#19979;&#26159;&#22914;&#20309;&#20351;&#29992; Eloquent ORM &#23558; SQL &#26597;&#35810;&#30340;&#32467;&#26524;&#36716;&#25442;&#20026; JSON &#26684;&#24335;&#30340;&#31034;&#20363;&#65306;<\/p>\n<p>&#39318;&#20808;&#30830;&#20445;&#20320;&#24050;&#32463;&#23433;&#35013;&#20102; Eloquent ORM &#24182;&#23558;&#20854;&#28155;&#21152;&#21040;&#20320;&#30340;&#39033;&#30446;&#20013;&#12290;<\/p>\n<pre><code class=\"language-bash\">composer require illuminate\/database<\/code><\/pre>\n<p>&#28982;&#21518;&#22312;&#20320;&#30340;&#25511;&#21046;&#22120;&#26041;&#27861;&#20013;&#65292;&#20320;&#21487;&#20197;&#36825;&#26679;&#25805;&#20316;&#65306;<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\nuse IlluminateDatabaseEloquentModel;\n\nclass YourModel extends Model\n{\n    public function getJsonAttribute($value)\n    {\n        return json_decode($value, true);\n    }\n}<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65292;<code>getJsonAttribute<\/code> &#26041;&#27861;&#20174;&#27169;&#22411;&#30340; <code>jsonAttribute<\/code> &#23646;&#24615;&#33719;&#21462;&#20540;&#65292;&#24182;&#23581;&#35797;&#23558;&#23427;&#36716;&#25442;&#20026; JSON&#12290;&#22914;&#26524;&#36716;&#25442;&#25104;&#21151;&#65292;&#23427;&#23558;&#36820;&#22238;&#19968;&#20010;&#24050;&#36716;&#25442;&#20026; JSON &#30340;&#23383;&#31526;&#20018;&#12290;&#21542;&#21017;&#65292;&#23427;&#23558;&#25243;&#20986;&#19968;&#20010;&#24322;&#24120;&#12290;<\/p>\n<p>&#22914;&#26524;&#20320;&#24819;&#35201;&#26356;&#35814;&#32454;&#30340;&#35299;&#37322;&#21644;&#31034;&#20363;&#65292;&#35831;&#21578;&#35785;&#25105;&#26356;&#22810;&#20851;&#20110;&#20320;&#30340;&#20855;&#20307;&#38656;&#27714;&#65281;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Bug&#32534;&#35793;&#29422; Eloquent &#26159; Laravel &#26694;&#26550;&#20013;&#30340;&#19968;&#20010;&#38750;&#24120;&#24378;&#22823;&#30340; ORM&#65288;&#038;#2354..<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false},"tags":[],"my1js2nav":[44],"tuisongtax":[],"class_list":["post-955","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\/955","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=955"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tags?post=955"},{"taxonomy":"my1js2nav","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js2nav?post=955"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tuisongtax?post=955"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}