{"id":1047,"date":"2025-06-12T11:24:09","date_gmt":"2025-06-12T03:24:09","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/php\/php-application-manual\/symfony\/1047.html"},"modified":"2025-06-12T11:24:09","modified_gmt":"2025-06-12T03:24:09","slug":"symfony%ef%bc%9a%e5%a6%82%e4%bd%95%e4%bb%8e%e8%b7%af%e7%94%b1%e4%b8%ad%e6%8f%90%e5%8f%96%e6%9f%a5%e8%af%a2%e5%ad%97%e7%ac%a6%e4%b8%b2%e5%8f%82%e6%95%b0","status":"publish","type":"my1js","link":"https:\/\/www.zhaozhao123.cn\/php\/my1js\/1047.html","title":{"rendered":"Symfony\uff1a\u5982\u4f55\u4ece\u8def\u7531\u4e2d\u63d0\u53d6\u67e5\u8be2\u5b57\u7b26\u4e32\u53c2\u6570"},"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; Symfony &#20013;&#65292;&#20320;&#21487;&#20197;&#36890;&#36807;&#22810;&#31181;&#26041;&#24335;&#20174;&#36335;&#30001;&#20013;&#25552;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#12290;&#20197;&#19979;&#26159;&#19968;&#20123;&#24120;&#35265;&#30340;&#26041;&#27861;&#65306;<\/p>\n<h3>&#26041;&#27861;&#19968;&#65306;&#20351;&#29992; <code>Request<\/code> &#23545;&#35937;<\/h3>\n<p>&#39318;&#20808;&#65292;&#20320;&#38656;&#35201;&#33719;&#21462;&#24403;&#21069;&#30340;&#35831;&#27714;&#23545;&#35937;&#12290;&#36825;&#36890;&#24120;&#21487;&#20197;&#36890;&#36807; <code>$request<\/code> &#25110; <code>$this-&gt;getRequest()<\/code> &#26469;&#23454;&#29616;&#12290;<\/p>\n<pre><code class=\"language-php\">use SymfonyComponentHttpFoundationRequest;\n\n\/\/ &#33719;&#21462;&#24403;&#21069;&#35831;&#27714;&#23545;&#35937;\n$request = $this-&gt;getRequest();\n\n\/\/ &#25552;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;\n$queryParam = $request-&gt;query-&gt;get('paramName');\n\n\/\/ &#36755;&#20986;&#32467;&#26524;\necho \"Query parameter: \" . $queryParams;<\/code><\/pre>\n<h3>&#26041;&#27861;&#20108;&#65306;&#20351;&#29992; <code>Route<\/code> &#23545;&#35937;<\/h3>\n<p>&#22914;&#26524;&#20320;&#26377;&#19968;&#20010;&#20855;&#20307;&#30340;&#36335;&#30001;&#23450;&#20041;&#65292;&#24182;&#19988;&#24819;&#35201;&#20174;&#20013;&#25552;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#65292;&#21487;&#20197;&#20351;&#29992; <code>Route<\/code> &#23545;&#35937;&#12290;<\/p>\n<pre><code class=\"language-php\">use SymfonyComponentRoutingAnnotationRoute;\nuse SymfonyBundleFrameworkBundleControllerAbstractController;\n\nclass MyController extends AbstractController\n{\n    \/**\n     * @Route(\"\/my-route\/{paramName}\", name=\"my_route\")\n     *\/\n    public function myAction(Request $request, string $paramName)\n    {\n        \/\/ &#25552;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;\n        $queryParams = $request-&gt;query-&gt;get($paramName);\n\n        \/\/ &#36755;&#20986;&#32467;&#26524;\n        echo \"Query parameter: \" . $queryParams;\n    }\n}<\/code><\/pre>\n<h3>&#31034;&#20363;&#20195;&#30721;<\/h3>\n<p>&#20551;&#35774;&#20320;&#26377;&#19968;&#20010;&#25511;&#21046;&#22120; <code>MyController<\/code>&#65292;&#24182;&#19988;&#20320;&#24819;&#20174; <code>\/my-route\/someValue<\/code> &#36825;&#26679;&#30340; URL &#20013;&#25552;&#21462; <code>someValue<\/code> &#20316;&#20026;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#12290;<\/p>\n<pre><code class=\"language-php\">namespace AppController;\n\nuse SymfonyComponentHttpFoundationRequest;\nuse SymfonyBundleFrameworkBundleControllerAbstractController;\n\nclass MyController extends AbstractController\n{\n    \/**\n     * @Route(\"\/my-route\/{paramName}\", name=\"my_route\")\n     *\/\n    public function myAction(Request $request, string $paramName)\n    {\n        \/\/ &#25552;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;\n        $queryParams = $request-&gt;query-&gt;get($paramName);\n\n        \/\/ &#36755;&#20986;&#32467;&#26524;\n        echo \"Query parameter: \" . $queryParams;\n    }\n}<\/code><\/pre>\n<p>&#24403;&#20320;&#35775;&#38382; <code>\/my-route\/someValue<\/code> &#26102;&#65292;&#25511;&#21046;&#21488;&#20250;&#36755;&#20986;&#65306;<\/p>\n<pre><code>Query parameter: someValue<\/code><\/pre>\n<p>&#24076;&#26395;&#36825;&#20123;&#20449;&#24687;&#23545;&#20320;&#26377;&#24110;&#21161;&#65281;&#22914;&#26524;&#26377;&#20219;&#20309;&#38382;&#39064;&#65292;&#35831;&#38543;&#26102;&#25552;&#38382;&#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;Symfony&#26694;&#26550;&#24320;&#21457;Web&#24212;&#29992;&#31243;&#24207;&#26102;&#65292;&#22788;&#29702;HTTP&#35831;&#27714;&#25968;&#25454;&#26159;&#19968;&#39033;&#20027;&#35201;&#20219;&#21153;&#12290;&#19968;&#20010;&#24120;&#35265;&#30340;&#38656;&#27714;&#26159;&#22312;&#36335;&#30001;&#20013;&#25552;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#12290;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#26159;&#19968;&#20123;&#21253;&#21547;&#22312;URL&#20043;&#21518;&#30340;&#38382;&#21495;&#21518;&#30340;&#25968;&#25454;&#29255;&#27573;&#12290;&#20102;&#35299;&#22914;&#20309;&#20174;&#36825;&#20123;&#21442;&#25968;&#20013;&#25552;&#21462;&#25968;&#25454;&#23558;&#20250;&#20351;&#25511;&#21046;&#22120;&#26356;&#21152;&#21160;&#24577;&#21644;&#21709;&#24212;&#29992;&#25143;&#36755;&#20837;&#12290;&#22312;&#36825;&#31687;&#25945;&#31243;&#20013;&#65292;&#24744;&#23558;&#23398;&#20064;&#22914;&#20309;&#22312;&#24744;&#30340;Symfony&#24212;&#29992;&#20013;&#26816;&#32034;&#24182;&#31649;&#29702;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#12290;<\/p><p>&#22312;&#25105;&#20204;&#24320;&#22987;&#25552;&#21462;&#26597;&#35810;&#21442;&#25968;&#20043;&#21069;&#65292;&#35831;&#30830;&#20445;&#24744;&#24050;&#32463;&#26377;&#19968;&#20010;&#36816;&#34892;&#20013;&#30340;Symfony&#39033;&#30446;&#12290;&#25552;&#20379;&#30340;&#20195;&#30721;&#31034;&#20363;&#22522;&#20110;Symfony 5&#65292;&#21487;&#33021;&#36866;&#29992;&#20110;&#20854;&#20182;&#29256;&#26412;&#26377;&#25152;&#19981;&#21516;&#12290;<\/p><h2>&#29702;&#35299;&#35831;&#27714;&#23545;&#35937;<\/h2><p>&#22312;Symfony&#20013;&#65292;&#30340;<code>Request<\/code>&#23545;&#35937;&#26159;&#22788;&#29702;HTTP&#35831;&#27714;&#30340;&#20027;&#35201;&#25509;&#21475;&#12290;&#27599;&#24403;&#21521;Symfony&#24212;&#29992;&#31243;&#24207;&#21457;&#20986;&#19968;&#20010;HTTP&#35831;&#27714;&#26102;&#65292;&#37117;&#20250;&#21019;&#24314;&#19968;&#20010;&#26032;&#30340;&#23545;&#35937;&#23454;&#20363;&#26469;&#22788;&#29702;&#36825;&#20010;&#35831;&#27714;&#12290;<code>Request<\/code>&#23454;&#20363;&#21019;&#24314;&#65292;&#25552;&#20379;&#20102;&#35775;&#38382;&#35831;&#27714;&#25968;&#25454;&#30340;&#26041;&#27861;&#65292;&#22914;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#12289;POST &#25968;&#25454;&#12289;HTTP &#22836;&#37096;&#31561;&#12290;<\/p><pre><code>\/\/ src\/Controller\/YourController.php\n\nnamespace AppController;\n\nuse SymfonyComponentHttpFoundationRequest;\n\nclass YourController\n{\n    public function index(Request $request)\n    {\n        \/\/ Logic\n    }\n}\n<\/code><\/pre><p>&#35753;&#25105;&#20204;&#28145;&#20837;&#25506;&#35752;&#22914;&#20309;&#21033;&#29992;&#25105;&#20204;&#33021;&#20570;&#20160;&#20040;&#26469;&#23454;&#29616;&#36825;&#19968;&#30446;&#26631;&#12290;<code>Request<\/code>&#29992;&#20110;&#33719;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#30340;&#23545;&#35937;&#12290;<\/p><h2>&#27491;&#22312;&#33719;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#12290;<\/h2><p>&#20026;&#20102;&#33719;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992;&#12290;<code>query<\/code>&#23646;&#20110;&#30340;<code>Request<\/code>&#23545;&#35937;&#12290;&#36825;&#20010;&#23646;&#24615;&#26159;&#19968;&#20010;&#23454;&#20363;Symfony&#30340;<code>ParameterBag<\/code>&#31867;&#21253;&#21547;&#19982;&#26597;&#35810;&#21442;&#25968;&#20132;&#20114;&#30340;&#26041;&#27861;&#12290;<\/p><pre><code>\/\/ src\/Controller\/YourController.php\n\nnamespace AppController;\n\nuse SymfonyComponentHttpFoundationRequest;\n\nclass YourController\n{\n    public function index(Request $request)\n    {\n        $searchValue = $request-&gt;query-&gt;get('search');\n    }\n}\n<\/code><\/pre><p>&#19978;&#36848;&#20195;&#30721;&#20250;&#20174;&#35831;&#27714;&#20013;&#26816;&#32034;&ldquo;&#25628;&#32034;&rdquo;&#26597;&#35810;&#21442;&#25968;&#12290;&#22914;&#26524;&#19981;&#23384;&#22312;&#65292;<code>null<\/code>&#23558;&#20250;&#34987;&#36864;&#22238;&#12290;<\/p><h2>&#40664;&#35748;&#20540;&#21644;&#21487;&#36873;&#21442;&#25968;<\/h2><p>&#26377;&#26102;&#35831;&#27714;&#20013;&#21487;&#33021;&#19981;&#20250;&#21253;&#21547;&#25152;&#26377;&#21442;&#25968;&#12290;&#20026;&#20102;&#22788;&#29702;&#36825;&#31181;&#24773;&#20917;&#65292;&#20320;&#21487;&#20197;&#25351;&#23450;&#19968;&#20010;&#40664;&#35748;&#20540;&#65292;&#22312;&#26597;&#35810;&#23383;&#31526;&#20018;&#20013;&#25214;&#19981;&#21040;&#35813;&#21442;&#25968;&#26102;&#36820;&#22238;&#36825;&#20010;&#40664;&#35748;&#20540;&#12290;<\/p><pre><code>\/\/...\n$searchValue = $request-&gt;query-&gt;get('search', 'defaultSearchValue');\n\/\/...\n<\/code><\/pre><p>&#36825;&#30830;&#20445;&#20102;&#21464;&#37327;<code>$searchValue<\/code>&#24635;&#26159;&#26377;&#19968;&#20123;&#25968;&#25454;&#65292;&#21487;&#33021;&#26159;&#20174;&#35831;&#27714;&#20013;&#33719;&#21462;&#30340;&#65292;&#20063;&#21487;&#33021;&#26159;&#40664;&#35748;&#20540;&#25552;&#20379;&#30340;&#12290;<\/p><h2>&#31867;&#22411;&#36716;&#25442;<\/h2><p>&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#24635;&#26159;&#20197;&#23383;&#31526;&#20018;&#30340;&#24418;&#24335;&#36820;&#22238;&#65292;&#22240;&#20026;HTTP&#26159;&#19968;&#31181;&#25991;&#26412;&#21327;&#35758;&#12290;&#28982;&#32780;&#65292;&#20320;&#21487;&#20197;&#25163;&#21160;&#23558;&#36825;&#20123;&#23383;&#31526;&#20018;&#36716;&#25442;&#20026;&#25152;&#38656;&#30340;&#25968;&#25454;&#31867;&#22411;&#12290;<\/p><pre><code>\/\/...\n$intValue = (int) $request-&gt;query-&gt;get('page', 1);\n\/\/...\n<\/code><\/pre><p>&#22312;&ldquo;&#39029;&rdquo;&#21442;&#25968;&#34987;&#36716;&#25442;&#20026;&#25972;&#25968;&#26102;&#65292;&#22914;&#26524;&#26377;&#40664;&#35748;&#20540;&#21017;&#20026;1&#12290;<\/p><h2>&#22788;&#29702;&#21442;&#25968;&#30340;&#22810;&#20010;&#20540;<\/h2><p>&#22312;&#26576;&#20123;&#24773;&#20917;&#19979;&#65292;&#26597;&#35810;&#21442;&#25968;&#21487;&#33021;&#20250;&#26377;&#22810;&#20010;&#20540;&#12290;Symfony&#30340;&#35831;&#27714;&#23545;&#35937;&#22788;&#29702;&#36825;&#31181;&#24773;&#20917;&#38750;&#24120;&#20248;&#38597;&#12290;<\/p><pre><code>\/\/...\n$tags = $request-&gt;query-&gt;get('tags');\n\nif (is_array($tags)) {\n    \/\/ Do something with the array of tags\n} else {\n    \/\/ Handle single value\n}\n\/\/...\n<\/code><\/pre><p>&#22914;&#26524;&#21442;&#25968;&lsquo;tags&rsquo;&#26377;&#22810;&#20010;&#20540;&#65292;&#23427;&#23558;&#20197;&#25968;&#32452;&#30340;&#24418;&#24335;&#36820;&#22238;&#65307;&#21542;&#21017;&#65292;&#23427;&#23558;&#20197;&#23383;&#31526;&#20018;&#24418;&#24335;&#36820;&#22238;&#12290;<\/p><h2>&#27491;&#22312;&#33719;&#21462;&#25152;&#26377;&#26597;&#35810;&#21442;&#25968;&#12290;<\/h2><p>&#22914;&#26524;&#38656;&#35201;&#33719;&#21462;&#25152;&#26377;&#30340;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#65292;&#20320;&#21487;&#20197;&#35843;&#29992;&#12290;<code>all()<\/code>&#26041;&#27861;&#12290;<\/p><pre><code>\/\/...\n$allQueryParams = $request-&gt;query-&gt;all();\n\/\/...\n<\/code><\/pre><p>&#36825;&#23558;&#32473;&#20320;&#19968;&#20010;&#21253;&#21547;&#25152;&#26377;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#30340;&#20851;&#32852;&#25968;&#32452;&#12290;<\/p><h2>&#21019;&#24314;&#21487;&#37325;&#29992;&#30340;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#20989;&#25968;<\/h2><p>&#20026;&#20102;&#31616;&#21270;&#33719;&#21462;&#26597;&#35810;&#21442;&#25968;&#30340;&#36807;&#31243;&#65292;&#20320;&#21487;&#20197;&#21019;&#24314;&#19968;&#20010;&#19987;&#38376;&#30340;&#26381;&#21153;&#25110;&#21033;&#29992;Symfony&#25552;&#20379;&#30340;&#22522;&#30784;&#25511;&#21046;&#22120;&#29305;&#24615;&#12290;<\/p><pre><code>\/\/ src\/Utility\/QueryStringHelper.php\n\nnamespace AppUtility;\n\nclass QueryStringHelper\n{\n    public static function getQueryParam(Request $request, $paramName, $default = null)\n    {\n        return $request-&gt;query-&gt;get($paramName, $default);\n    }\n}\n<\/code><\/pre><p>&#36825;&#20351;&#24471;&#22312;&#25511;&#21046;&#22120;&#20013;&#30340;&#20195;&#30721;&#26356;&#21152;&#24178;&#20928;&#19988;&#21487;&#37325;&#29992;&#12290;<\/p><h2>&#32467;&#35770;&#12290;<\/h2><p>&#39640;&#25928;&#22788;&#29702;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#22312;Symfony&#30340;web&#24320;&#21457;&#20013;&#26159;&#19968;&#39033;&#23453;&#36149;&#30340;&#25216;&#33021;&#12290;&#36890;&#36807;&#20351;&#29992;Symfony&#25552;&#20379;&#30340;&#26041;&#27861;&#65292;&#21487;&#20197;&#36731;&#26494;&#22320;&#31649;&#29702;&#36825;&#20123;&#21442;&#25968;&#12290;<code>Request<\/code>&#23545;&#35937;&#65292;&#24744;&#21487;&#20197;&#36731;&#26494;&#35775;&#38382;&#21644;&#25805;&#20316;&#26597;&#35810;&#23383;&#31526;&#20018;&#25968;&#25454;&#65292;&#20174;&#32780;&#26500;&#24314;&#26356;&#21152;&#20581;&#22766;&#19988;&#29992;&#25143;&#21451;&#22909;&#30340;&#24212;&#29992;&#31243;&#24207;&#12290;&#36890;&#36807;&#25552;&#20379;&#30340;&#31034;&#20363;&#21644;&#25216;&#26415;&#65292;&#29616;&#22312;&#24744;&#24212;&#35813;&#23545;&#22312;Symfony&#39033;&#30446;&#20013;&#22788;&#29702;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#24863;&#21040;&#33258;&#20449;&#20102;&#12290;<\/p><p>&#35831;&#35760;&#20303;&#65292;&#25552;&#20379;&#30340;&#26041;&#27861;&#21482;&#26159;&#36215;&#28857;&#12290;Symfony&#38750;&#24120;&#24378;&#22823;&#19988;&#28789;&#27963;&#65292;&#20801;&#35768;&#24744;&#26681;&#25454;&#24212;&#29992;&#31243;&#24207;&#38656;&#27714;&#31934;&#30830;&#25193;&#23637;&#21644;&#33258;&#23450;&#20041;&#35831;&#27714;&#22788;&#29702;&#36923;&#36753;&#12290;&#21153;&#24517;&#35201;&#26597;&#38405;Symfony&#25991;&#26723;&#20197;&#33719;&#21462;&#26368;&#26032;&#21151;&#33021;&#21644;&#26368;&#20339;&#23454;&#36341;&#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; Symfony &#20013;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; <code>Route<\/code> &#31867;&#30340; <code>routeParams<\/code> &#23646;&#24615;&#26469;&#33719;&#21462;&#35831;&#27714;&#20013;&#30340;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#12290;&#20197;&#19979;&#26159;&#22914;&#20309;&#20570;&#21040;&#36825;&#19968;&#28857;&#30340;&#19968;&#33324;&#26041;&#27861;&#65306;<\/p>\n<p>&#39318;&#20808;&#65292;&#30830;&#20445;&#20320;&#22312;&#25511;&#21046;&#22120;&#31867;&#20013;&#23450;&#20041;&#20102;&#36335;&#30001;&#65292;&#24182;&#19988;&#36825;&#20010;&#36335;&#30001;&#26144;&#23556;&#21040;&#30456;&#24212;&#30340;&#35270;&#22270;&#12290;<\/p>\n<pre><code class=\"language-php\">namespace AppController;\n\nuse SymfonyComponentHttpFoundationRequest;\nuse SymfonyComponentRoutingAnnotationRoute;\n\nclass MyController extends Controller\n{\n    \/**\n     * @Route(\"\/my-route\", name=\"my_route\")\n     *\/\n    public function myAction(Request $request)\n    {\n        \/\/ &#20174;&#36335;&#30001;&#20013;&#25552;&#21462;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;\n        $params = $request-&gt;get('my_param');\n\n        return $this-&gt;render('my_view.html.twig', [\n            'some_data' =&gt; $params,\n        ]);\n    }\n}<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65292;&#25105;&#20204;&#21019;&#24314;&#20102;&#19968;&#20010;&#21517;&#20026; <code>my_route<\/code> &#30340;&#36335;&#30001;&#65292;&#23427;&#25509;&#21463;&#19968;&#20010;&#21517;&#20026; <code>my_param<\/code> &#30340;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#12290;<\/p>\n<p>&#28982;&#21518;&#65292;&#22312;&#35270;&#22270;&#25991;&#20214;&#65288;&#20363;&#22914; <code>my_view.html.twig<\/code>&#65289;&#20013;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; <code>$params<\/code> &#21464;&#37327;&#26469;&#35775;&#38382;&#36825;&#20123;&#21442;&#25968;&#12290;<\/p>\n<p>&#31034;&#20363;&#20195;&#30721;&#65306;<\/p>\n<pre><code class=\"language-html\">{% for param in params %}\n    &lt;div&gt;{{ param }}&lt;\/div&gt;\n{% endfor %}<\/code><\/pre>\n<p>&#36825;&#23558;&#36755;&#20986;&#25152;&#26377;&#26597;&#35810;&#23383;&#31526;&#20018;&#21442;&#25968;&#30340;&#20540;&#65292;&#22914; &#8220;query1&#8221; &#21644; &#8220;query2&#8243;&#12290;<\/p>\n<p>&#22914;&#26524;&#20320;&#38656;&#35201;&#22788;&#29702;&#26356;&#22810;&#30340;&#21442;&#25968;&#65292;&#21487;&#20197;&#32487;&#32493;&#36941;&#21382; <code>$params<\/code> &#21464;&#37327;&#65292;&#25110;&#32773;&#20351;&#29992;&#26356;&#22797;&#26434;&#30340;&#36923;&#36753;&#26469;&#35299;&#26512;&#23427;&#20204;&#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; Symfony &#20013;&#65292;&#20320;&#21487;&#20197;&#36890;&#36807;&#22810;&#31181;&#26041;&#24335;&#20174;&#36335;&#30001;&#038;#2..<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false},"tags":[],"my1js2nav":[45],"tuisongtax":[],"class_list":["post-1047","my1js","type-my1js","status-publish","hentry","my1js2nav-symfony"],"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\/1047","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=1047"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tags?post=1047"},{"taxonomy":"my1js2nav","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js2nav?post=1047"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tuisongtax?post=1047"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}