{"id":945,"date":"2025-06-12T03:19:09","date_gmt":"2025-06-11T19:19:09","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/php\/php-application-manual\/laravel\/945.html"},"modified":"2025-06-12T03:19:09","modified_gmt":"2025-06-11T19:19:09","slug":"%e5%a6%82%e4%bd%95%e5%9c%a8-eloquent%ef%bc%88laravel%ef%bc%89%e4%b8%ad%e6%a0%bc%e5%bc%8f%e5%8c%96%e6%97%a5%e6%9c%9f%e6%97%b6%e9%97%b4","status":"publish","type":"my1js","link":"https:\/\/www.zhaozhao123.cn\/php\/my1js\/945.html","title":{"rendered":"\u5982\u4f55\u5728 Eloquent\uff08Laravel\uff09\u4e2d\u683c\u5f0f\u5316\u65e5\u671f\u65f6\u95f4"},"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;&#20320;&#21487;&#20197;&#20351;&#29992; Eloquent ORM &#26469;&#22788;&#29702;&#25968;&#25454;&#24211;&#25805;&#20316;&#65292;&#24182;&#19988;&#21487;&#20197;&#36890;&#36807; <code>Carbon<\/code> &#31867;&#26469;&#26684;&#24335;&#21270;&#26085;&#26399;&#26102;&#38388;&#12290;&#20197;&#19979;&#26159;&#19968;&#20123;&#31034;&#20363;&#20195;&#30721;&#65292;&#23637;&#31034;&#20102;&#22914;&#20309;&#22312; Eloquent &#20013;&#26684;&#24335;&#21270;&#26085;&#26399;&#26102;&#38388;&#65306;<\/p>\n<h3>1. &#23433;&#35013; Carbon<\/h3>\n<p>&#39318;&#20808;&#65292;&#30830;&#20445;&#20320;&#24050;&#32463;&#23433;&#35013;&#20102; Carbon &#24211;&#12290;&#22914;&#26524;&#27809;&#26377;&#23433;&#35013;&#65292;&#21487;&#20197;&#20351;&#29992; Composer &#36827;&#34892;&#23433;&#35013;&#65306;<\/p>\n<pre><code class=\"language-bash\">composer require nesbot\/carbon<\/code><\/pre>\n<h3>2. &#21019;&#24314;&#27169;&#22411;&#24182;&#35774;&#32622;&#26085;&#26399;&#23383;&#27573;<\/h3>\n<p>&#20551;&#35774;&#25105;&#20204;&#26377;&#19968;&#20010;&#21517;&#20026; <code>User<\/code> &#30340;&#27169;&#22411;&#65292;&#24182;&#19988;&#20854;&#20013;&#26377;&#19968;&#20010; <code>created_at<\/code> &#23383;&#27573;&#29992;&#20110;&#23384;&#20648;&#21019;&#24314;&#26102;&#38388;&#12290;<\/p>\n<pre><code class=\"language-php\">use IlluminateDatabaseEloquentModel;\nuse CarbonCarbon;\n\nclass User extends Model\n{\n    protected $fillable = ['name', 'email'];\n\n    public function getCreatedAtAttribute($value)\n    {\n        return Carbon::parse($value)-&gt;format('Y-m-d H:i:s');\n    }\n}<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65292;&#25105;&#20204;&#23450;&#20041;&#20102;&#19968;&#20010; <code>getCreatedAtAttribute<\/code> &#26041;&#27861;&#65292;&#35813;&#26041;&#27861;&#20250;&#36820;&#22238;&#19968;&#20010; <code>Carbon<\/code> &#23545;&#35937;&#65292;&#24182;&#23558;&#20854;&#26684;&#24335;&#21270;&#20026;&#25351;&#23450;&#30340;&#23383;&#31526;&#20018;&#27169;&#24335;&#12290;<\/p>\n<h3>3. &#26597;&#35810;&#25968;&#25454;&#24182;&#26684;&#24335;&#21270;&#26085;&#26399;&#26102;&#38388;<\/h3>\n<p>&#29616;&#22312;&#65292;&#25105;&#20204;&#21487;&#20197;&#26597;&#35810; <code>User<\/code> &#27169;&#22411;&#20013;&#30340;&#25968;&#25454;&#65292;&#24182;&#23558; <code>created_at<\/code> &#23383;&#27573;&#26684;&#24335;&#21270;&#20026;&#25152;&#38656;&#30340;&#26684;&#24335;&#12290;<\/p>\n<pre><code class=\"language-php\">use AppUser;\n\n$users = User::all();\n\nforeach ($users as $user) {\n    echo \"Name: {$user-&gt;name}, Created At: {$user-&gt;created_at}n\";\n}<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65292;&#25105;&#20204;&#20351;&#29992; <code>all()<\/code> &#26041;&#27861;&#33719;&#21462;&#25152;&#26377;&#29992;&#25143;&#30340;&#25968;&#25454;&#65292;&#28982;&#21518;&#36941;&#21382;&#27599;&#20010;&#29992;&#25143;&#23545;&#35937;&#65292;&#24182;&#25171;&#21360;&#20986;&#20854;&#21517;&#31216;&#21644;&#21019;&#24314;&#26102;&#38388;&#12290;<\/p>\n<h3>4. &#20351;&#29992; Carbon &#36827;&#34892;&#26356;&#22797;&#26434;&#30340;&#26684;&#24335;&#21270;<\/h3>\n<p>&#22914;&#26524;&#20320;&#38656;&#35201;&#36827;&#34892;&#26356;&#22797;&#26434;&#30340;&#26085;&#26399;&#26102;&#38388;&#26684;&#24335;&#21270;&#65292;&#21487;&#20197;&#20351;&#29992; Carbon &#25552;&#20379;&#30340;&#21508;&#31181;&#26041;&#27861;&#12290;&#20363;&#22914;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; <code>toFormattedDateTimeString<\/code> &#26041;&#27861;&#26469;&#26684;&#24335;&#21270;&#26085;&#26399;&#26102;&#38388;&#21040;&#29305;&#23450;&#30340;&#26684;&#24335;&#12290;<\/p>\n<pre><code class=\"language-php\">$user = User::find(1);\n\necho \"Created At: {$user-&gt;created_at-&gt;toFormattedDateTimeString('Y-m-d H:i:s')}n\";<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65292;&#25105;&#20204;&#20351;&#29992; <code>toFormattedDateTimeString<\/code> &#26041;&#27861;&#23558; <code>created_at<\/code> &#23383;&#27573;&#26684;&#24335;&#21270;&#20026; <code>YYYY-MM-DD HH:mm:ss<\/code> &#26684;&#24335;&#12290;<\/p>\n<p>&#36890;&#36807;&#36825;&#20123;&#31034;&#20363;&#20195;&#30721;&#65292;&#20320;&#24212;&#35813;&#33021;&#22815;&#25484;&#25569;&#22312; Laravel &#20013;&#20351;&#29992; Eloquent &#21644; Carbon &#26469;&#26684;&#24335;&#21270;&#26085;&#26399;&#26102;&#38388;&#30340;&#26041;&#27861;&#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;Eloquent&#19982;Laravel&#19968;&#36215;&#24037;&#20316;&#26102;&#65292;&#22788;&#29702;&#26085;&#26399;&#21644;&#26102;&#38388;&#23383;&#27573;&#26159;&#19968;&#20010;&#24320;&#21457;&#20013;&#30340;&#20851;&#38190;&#26041;&#38754;&#12290;Eloquent&#65292;&#36825;&#26159;Laravel&#21253;&#21547;&#30340;ORM&#65288;&#23545;&#35937;&#20851;&#31995;&#26144;&#23556;&#22120;&#65289;&#65292;&#36890;&#36807;&#25552;&#20379;&#36981;&#24490;&ldquo;&#32422;&#23450;&#20248;&#20110;&#37197;&#32622;&rdquo;&#21407;&#21017;&#30340;&#21151;&#33021;&#26469;&#20351;&#22788;&#29702;&#26085;&#26399;&#21464;&#24471;&#26080;&#32541;&#12290;&#22312;&#36825;&#20010;&#25945;&#31243;&#20013;&#65292;&#25105;&#20204;&#23558;&#25506;&#32034;&#22914;&#20309;&#21033;&#29992;Eloquent&#19982;Laravel&#26684;&#24335;&#21270;&#26085;&#26399;&#26102;&#38388;&#23383;&#27573;&#30340;&#19981;&#21516;&#26041;&#27861;&#12290;<\/p><h2>&#29702;&#35299;&#30899;<\/h2><p>&#22312;Laravel&#20013;&#65292;&#26085;&#26399;&#21644;&#26102;&#38388;&#23383;&#27573;&#20250;&#34987;&#33258;&#21160;&#36716;&#25442;&#20026;&#30456;&#24212;&#30340;&#31867;&#22411;&#12290;<code>Carbon<\/code>&#26085;&#26399;&#26102;&#38388;&#24211;&#23454;&#20363;&#65292;&#36825;&#26159;&#19968;&#20010;PHP&#25193;&#23637;&#30340;&#26085;&#26399;&#21644;&#26102;&#38388;&#24211;&#12290;<code>DateTime<\/code>&#35813;&#23383;&#27573;&#40664;&#35748;&#25903;&#25345;&#22810;&#31181;&#26041;&#20415;&#30340;&#26041;&#27861;&#36827;&#34892;&#25805;&#20316;&#12290;<code>Carbon<\/code>&#25552;&#20379;&#12290;<\/p><p>&#20195;&#30721;&#31034;&#20363;&#65306;<\/p><pre><code>$user = User::find(1);\necho $user-&gt;created_at-&gt;format('Y-m-d H:i:s');<\/code><\/pre><p>&#22312;&#19978;&#36848;&#20363;&#23376;&#20013;&#65292;<code>created_at<\/code>&#22312;&#20219;&#20309;Eloquent&#27169;&#22411;&#20013;&#30340;&#20856;&#22411;&#26102;&#38388;&#25139;&#23383;&#27573;&#65292;&#40664;&#35748;&#24773;&#20917;&#19979;&#26159;&#19968;&#20010;Carbon&#23454;&#20363;&#65292;&#25105;&#20204;&#36890;&#24120;&#20250;&#35843;&#29992;&#23427;&#12290;<code>format()<\/code>&#22312;&#20854;&#20013;&#20351;&#29992;&#26041;&#27861;&#26469;&#34920;&#31034;&#29305;&#23450;&#27169;&#24335;&#30340;&#26102;&#38388;&#25139;&#12290;<\/p><h2>&#23450;&#21046;&#26085;&#26399;&#26684;&#24335;<\/h2><p>&#22312;&#26576;&#20123;&#24773;&#20917;&#19979;&#65292;&#25105;&#20204;&#21487;&#33021;&#24076;&#26395;&#33258;&#23450;&#20041;&#26085;&#26399;&#23383;&#27573;&#30340;&#26684;&#24335;&#65292;&#25110;&#32773;&#25105;&#20204;&#30340;&#29305;&#27530;&#26085;&#26399;&#23383;&#27573;&#19981;&#36981;&#24490;Eloquent&#25552;&#20379;&#30340;&#40664;&#35748;&#36716;&#25442;&#26041;&#24335;&#12290;&#20197;&#19979;&#26159;&#23454;&#29616;&#36825;&#19968;&#30446;&#26631;&#30340;&#26041;&#27861;&#12290;<\/p><h3>&#20351;&#29992;&#35775;&#38382;&#22120;&#65288;Accessors&#65289;<\/h3><p>Laravel&#30340;&#35775;&#38382;&#22120;&#20801;&#35768;&#20320;&#22312;&#20174;&#25968;&#25454;&#24211;&#33719;&#21462;&#23646;&#24615;&#21518;&#65292;&#20294;&#22312;&#36820;&#22238;&#21040;&#29992;&#25143;&#20043;&#21069;&#25191;&#34892;&#25805;&#20316;&#12290;&#20320;&#21487;&#20197;&#20026;&#26085;&#26399;&#23646;&#24615;&#23450;&#20041;&#19968;&#20010;&#35775;&#38382;&#22120;&#26469;&#25913;&#21464;&#20854;&#26684;&#24335;&#12290;<\/p><p>&#20195;&#30721;&#31034;&#20363;&#65306;<\/p><pre><code>class User extends Model\n{\n    protected function getCreatedAtAttribute($value)\n    {\n        return Carbon::parse($value)-&gt;format('d\/m\/Y H:i:s');\n    }\n}<\/code><\/pre><p>&#36825;&#20010;&#35013;&#39280;&#22120;&#23558;&#26684;&#24335;&#21270;&#25991;&#26412;&#12290;<code>created_at<\/code>&#22312;&#27169;&#22411;&#23454;&#20363;&#19978;&#35775;&#38382;&#26102;&#65292;&#37117;&#20250;&#35302;&#21457;&#36825;&#20010;&#26041;&#27861;&#12290;&#27599;&#27425;&#35843;&#29992;&#26102;&#37117;&#20250;&#35302;&#21457;&#12290;<code>$user-&gt;created_at<\/code>&#29616;&#22312;&#65292;&#24744;&#23558;&#25910;&#21040;&#26085;&#26399;&#20197;&ldquo;d\/m\/Y H:i:s&rdquo;&#26684;&#24335;&#26174;&#31034;&#12290;<\/p><h3>&#20351;&#29992;&#20462;&#25913;&#22120;<\/h3><p>&#26377;&#26102;&#25105;&#20204;&#38656;&#35201;&#22312;&#20445;&#23384;&#21040;&#25968;&#25454;&#24211;&#26102;&#26684;&#24335;&#21270;&#26085;&#26399;&#12290;&#20026;&#27492;&#65292;&#20320;&#21487;&#20197;&#23450;&#20041;&#19968;&#20010;&#22788;&#29702;&#22120;&#26469;&#35774;&#32622;&#27169;&#22411;&#23646;&#24615;&#30340;&#20540;&#65306;<\/p><p>&#31034;&#20363;&#20195;&#30721;&#65306;<\/p><pre><code>class User extends Model\n{\n    protected function setCustomDateAttribute($value)\n    {\n        $this-&gt;attributes['custom_date'] = Carbon::createFromFormat('d\/m\/Y', $value)-&gt;toDateTimeString();\n    }\n}<\/code><\/pre><p>&#36825;&#20010;&#21464;&#20307;&#22120;&#25509;&#21463;&#26684;&#24335;&#20026;&ldquo;d\/m\/Y&rdquo;&#30340;&#26085;&#26399;&#65292;&#24182;&#22312;&#20445;&#23384;&#21040;&#25968;&#25454;&#24211;&#20043;&#21069;&#23558;&#20854;&#36716;&#25442;&#20026;&#21487;&#30001;&#25968;&#25454;&#24211;&#25509;&#21463;&#30340;&#26684;&#24335;&#12290;<code>custom_date<\/code>&#23646;&#24615;&#12290;<\/p><h2>&#20840;&#29699;&#26085;&#26399;&#24207;&#21015;&#21270;&#26684;&#24335;<\/h2><p>&#40664;&#35748;&#30340;&#26085;&#26399;&#24207;&#21015;&#21270;&#26684;&#24335;&#21487;&#20197;&#22312;&#24744;&#30340;&#27169;&#22411;&#20013;&#36890;&#36807;&#37325;&#20889;&#26469;&#26356;&#25913;&#12290;<code>serializeDate<\/code>&#20174;&#29238;&#27169;&#22411;&#31867;&#30340;&#26041;&#27861;&#20013;&#33719;&#21462;&#12290;&#36825;&#20250;&#24433;&#21709;&#24744;&#26085;&#26399;&#26102;&#38388;&#30340;JSON&#34920;&#31034;&#24418;&#24335;&#12290;<\/p><p>&#20195;&#30721;&#31034;&#20363;&#65306;<\/p><pre><code>class User extends Model\n{\n    protected function serializeDate(DateTimeInterface $date)\n    {\n        return $date-&gt;format('d\/m\/Y H:i:s');\n    }\n}<\/code><\/pre><p>&#36825;&#23558;&#20250;&#26684;&#24335;&#21270;&#25991;&#26723;&#20013;&#30340;&#25152;&#26377;&#26085;&#26399;&#12290;<code>User<\/code>&#22312;&#24207;&#21015;&#21270;&#20026;&#25968;&#32452;&#25110;JSON&#26102;&#65292;&#27169;&#22411;&#24212;&#35813;&#34987;&#22788;&#29702;&#12290;<\/p><h2>&#26085;&#26399;&#30340;&#26412;&#22320;&#21270;<\/h2><p>&#26412;&#22320;&#21270;&#23545;&#20110;&#38754;&#21521;&#22810;&#22320;&#21306;&#21463;&#20247;&#38750;&#24120;&#26377;&#24110;&#21161;&#12290;Laravel&#20351;&#24471;&#22312;&#27169;&#22411;&#30340;&#26085;&#26399;&#21644;&#26102;&#38388;&#34920;&#31034;&#19978;&#36827;&#34892;&#26412;&#22320;&#21270;&#21464;&#24471;&#23481;&#26131;&#12290;<\/p><p>&#20195;&#30721;&#31034;&#20363;&#65306;<\/p><pre><code>$user = User::find(1);\necho $user-&gt;created_at-&gt;translatedFormat('l jS F Y');<\/code><\/pre><p>&#36825;&#23558;&#36755;&#20986;&#26412;&#22320;&#21270;&#26085;&#26399;&#26684;&#24335;&#12290;<code>created_at<\/code>&#20351;&#29992;Carbon&#24211;&#30340;&#23646;&#24615;&#12290;<code>translatedFormat()<\/code>&#26041;&#27861;&#12290;<\/p><h2>&#26085;&#26399;&#33539;&#22260;&#21644;&#26597;&#35810;<\/h2><p>&#28155;&#21152;&#33258;&#23450;&#20041;&#33539;&#22260;&#21487;&#20197;&#31616;&#21270;&#26681;&#25454;&#26085;&#26399;&#23383;&#27573;&#26597;&#35810;&#35760;&#24405;&#30340;&#36807;&#31243;&#12290;<\/p><p>&#20195;&#30721;&#31034;&#20363;&#65306;<\/p><pre><code>class User extends Model\n{\n    public function scopeCreatedAtDay($query, $day)\n    {\n        return $query-&gt;whereDate('created_at', $day);\n    }\n}\n\n\/\/ Usage within a controller\nUser::createdAtDay('2023-04-05')-&gt;get();<\/code><\/pre><p>&#36825;&#20010;&#33539;&#22260;&#36807;&#28388;&#22312;&#29305;&#23450;&#26085;&#26399;&#21019;&#24314;&#30340;&#29992;&#25143;&#12290;<\/p><h2>&#30899;&#30340;&#39069;&#22806;&#26041;&#27861;<\/h2><p>&#27492;&#22806;<code>format()<\/code>&#30899;&#25552;&#20379;&#20102;&#22810;&#31181;&#20854;&#20182;&#26041;&#27861;&#26469;&#24110;&#21161;&#26085;&#26399;&#26102;&#38388;&#26684;&#24335;&#21270;&#21644;&#25805;&#20316;&#12290;&#20197;&#19979;&#26159;&#20854;&#20013;&#30340;&#19968;&#20123;&#65306;<\/p><p><code>startOfDay()<\/code>&#22909;&#30340;&#65292;&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<code>endOfDay()<\/code>&#23558;&#26102;&#38388;&#20462;&#25913;&#20026;00:00:00&#25110;23:59:59&#12290;<\/p><p><code>today()<\/code>&#22909;&#30340;&#65292;&#35831;&#21457;&#36865;&#20320;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<code>yesterday()<\/code>&#22909;&#30340;&#65292;&#35831;&#21457;&#36865;&#20320;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<code>tomorrow()<\/code>&#36820;&#22238;&#34920;&#31034;&#30456;&#24212;&#26085;&#26399;&#30340;&#23454;&#20363;&#12290;<\/p><p><code>diffForHumans()<\/code>&#25552;&#20379;&#20102;&#19968;&#20010;&#19982;&#24403;&#21069;&#26085;&#26399;&#30340;&#21487;&#35835;&#24046;&#24322;&#12290;<\/p><h2>&#32467;&#35770;&#12290;<\/h2><p>&#25484;&#25569;Eloquent&#20013;&#30340;&#26085;&#26399;&#21644;&#26102;&#38388;&#23383;&#27573;&#22788;&#29702;&#21487;&#20197;&#35299;&#38145;TypeScript&#30340;&#24378;&#22823;&#21151;&#33021;&#65292;&#20174;&#32780;&#29983;&#25104;&#24178;&#20928;&#12289;&#21487;&#35835;&#19988;&#26131;&#20110;&#32500;&#25252;&#30340;&#20195;&#30721;&#12290;&#36890;&#36807;&#26412;&#25945;&#31243;&#65292;&#24744;&#29616;&#22312;&#24212;&#35813;&#24863;&#21040;&#33258;&#24049;&#22312;Laravel&#27169;&#22411;&#20013;&#36827;&#34892;&#21508;&#31181;&#26085;&#26399;&#21644;&#26102;&#38388;&#25805;&#20316;&#26102;&#24050;&#32463;&#30456;&#24403;&#29087;&#32451;&#12290;&#24841;&#24555;&#32534;&#30721;&#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>Eloquent &#26159; Laravel &#20013;&#30340;&#19968;&#20010; ORM&#65288;&#23545;&#35937;&#20851;&#31995;&#26144;&#23556;&#65289;&#65292;&#29992;&#20110;&#19982;&#25968;&#25454;&#24211;&#36827;&#34892;&#20132;&#20114;&#12290;&#35201;&#20351;&#29992; Eloquent &#23545;&#26085;&#26399;&#21644;&#26102;&#38388;&#23383;&#27573;&#36827;&#34892;&#26684;&#24335;&#21270;&#65292;&#20320;&#21487;&#20197;&#21019;&#24314;&#19968;&#20010;&#26032;&#30340;&#27169;&#22411;&#31867;&#65292;&#24182;&#35206;&#30422; <code>toSql<\/code> &#26041;&#27861;&#12290;<\/p>\n<p>&#20197;&#19979;&#26159;&#22914;&#20309;&#22312; Eloquent &#20013;&#26684;&#24335;&#21270;&#26085;&#26399;&#21644;&#26102;&#38388;&#30340;&#31034;&#20363;&#65306;<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\nuse CarbonCarbon;\n\nclass User extends Model\n{\n    protected $table = 'users';\n\n    public function toSql()\n    {\n        return [\n            'created_at' =&gt; $this-&gt;createdAt-&gt;format('Y-m-d H:i:s'),\n            'updated_at' =&gt; $this-&gt;updatedAt-&gt;format('Y-m-d H:i:s')\n        ];\n    }\n}<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65292;&#25105;&#20204;&#21019;&#24314;&#20102;&#19968;&#20010;&#21517;&#20026; <code>User<\/code> &#30340;&#27169;&#22411;&#65292;&#24182;&#37325;&#20889;&#20102; <code>toSql<\/code> &#26041;&#27861;&#12290;&#36825;&#20010;&#26041;&#27861;&#36820;&#22238;&#19968;&#20010;&#25968;&#32452;&#65292;&#20854;&#20013;&#21253;&#21547;&#20004;&#20010;&#38190;&#65306;<code>created_at<\/code> &#21644; <code>updated_at<\/code>&#12290;&#36825;&#20004;&#20010;&#38190;&#20998;&#21035;&#20195;&#34920;&#29992;&#25143;&#30340;&#21019;&#24314;&#26102;&#38388;&#21644;&#26356;&#26032;&#26102;&#38388;&#12290;&#28982;&#21518;&#25105;&#20204;&#22312; <code>toSql<\/code> &#26041;&#27861;&#20013;&#20351;&#29992; <code>CarbonCarbon::createAt()<\/code> &#21019;&#24314;&#19968;&#20010;&#20855;&#26377;&#25351;&#23450;&#26102;&#38388;&#25139;&#30340;&#26032; <code>Carbon<\/code> &#23454;&#20363;&#12290;<\/p>\n<p>&#20026;&#20102;&#23558;&#36825;&#20123;&#25968;&#25454;&#23384;&#20648;&#21040;&#25968;&#25454;&#24211;&#20013;&#65292;&#20320;&#38656;&#35201;&#22312;&#34920;&#30340;&#30456;&#24212;&#21015;&#19978;&#35774;&#32622;&#36866;&#24403;&#30340;&#31867;&#22411;&#65292;&#20363;&#22914; <code>created_at<\/code> &#21487;&#20197;&#26159; <code>datetime<\/code> &#31867;&#22411;&#65292;&#32780; <code>updated_at<\/code> &#21487;&#20197;&#26159; <code>timestamp<\/code> &#31867;&#22411;&#12290;<\/p>\n<p>&#27880;&#24847;&#65306;&#36825;&#21482;&#26159;&#19968;&#20010;&#22522;&#26412;&#30340;&#20363;&#23376;&#65292;&#23454;&#38469;&#24212;&#29992;&#20013;&#21487;&#33021;&#38656;&#35201;&#26681;&#25454;&#20855;&#20307;&#38656;&#27714;&#35843;&#25972;&#26085;&#26399;&#21644;&#26102;&#38388;&#26684;&#24335;&#65292;&#25110;&#32773;&#28155;&#21152;&#39069;&#22806;&#30340;&#23383;&#27573;&#26469;&#28385;&#36275;&#29305;&#23450;&#30340;&#38656;&#27714;&#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;&#20320;&#21487;&#20197;&#20351;&#29992; Eloquent ORM &#26469;&#22788;&#29702;&#25968;&#25454;&#038;#242..<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false},"tags":[],"my1js2nav":[44],"tuisongtax":[],"class_list":["post-945","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\/945","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=945"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tags?post=945"},{"taxonomy":"my1js2nav","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js2nav?post=945"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tuisongtax?post=945"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}