{"id":1143,"date":"2025-06-12T14:08:01","date_gmt":"2025-06-12T06:08:01","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/php\/php-application-manual\/symfony\/1143.html"},"modified":"2025-06-12T14:08:01","modified_gmt":"2025-06-12T06:08:01","slug":"symfony-%e5%a6%82%e4%bd%95%e5%9c%a8twig%e6%a8%a1%e6%9d%bf%e4%b8%ad%e8%8e%b7%e5%8f%96%e5%bd%93%e5%89%8durl","status":"publish","type":"my1js","link":"https:\/\/www.zhaozhao123.cn\/php\/my1js\/1143.html","title":{"rendered":"Symfony: \u5982\u4f55\u5728Twig\u6a21\u677f\u4e2d\u83b7\u53d6\u5f53\u524dURL"},"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;&#20351;&#29992; Twig &#27169;&#26495;&#24341;&#25806;&#26469;&#33719;&#21462;&#24403;&#21069; URL&#12290;&#20197;&#19979;&#26159;&#22914;&#20309;&#22312; Twig &#27169;&#26495;&#20013;&#33719;&#21462;&#24403;&#21069; URL &#30340;&#31034;&#20363;&#65306;<\/p>\n<ol>\n<li>\n<p><strong>&#23433;&#35013; Symfony<\/strong>&#65288;&#22914;&#26524;&#23578;&#26410;&#23433;&#35013;&#65289;&#65306;<\/p>\n<pre><code class=\"language-bash\">composer create-project symfony\/skeleton my_project\ncd my_project<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>&#21019;&#24314;&#19968;&#20010;&#25511;&#21046;&#22120;<\/strong>&#65288;&#20363;&#22914; <code>src\/Controller\/HomeController.php<\/code>&#65289;&#65306;<\/p>\n<pre><code class=\"language-php\">namespace AppController;\n\nuse SymfonyBundleFrameworkBundleControllerAbstractController;\nuse SymfonyComponentHttpFoundationResponse;\n\nclass HomeController extends AbstractController\n{\n   public function index()\n   {\n       return $this-&gt;render('home\/index.html.twig');\n   }\n}<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>&#21019;&#24314;&#19968;&#20010;&#27169;&#26495;&#25991;&#20214;<\/strong>&#65288;&#20363;&#22914; <code>templates\/home\/index.html.twig<\/code>&#65289;&#65306;<\/p>\n<pre><code class=\"language-twig\">&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n   &lt;meta charset=\"UTF-8\"&gt;\n   &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n   &lt;title&gt;Home Page&lt;\/title&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n   &lt;h1&gt;Welcome to the Home Page&lt;\/h1&gt;\n   &lt;p&gt;The current URL is: {{ path('homepage') }}&lt;\/p&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>&#22312;&#36825;&#20010;&#31034;&#20363;&#20013;&#65292;&#25105;&#20204;&#20570;&#20102;&#20197;&#19979;&#20960;&#20214;&#20107;&#65306;<\/p>\n<ol>\n<li><strong>&#21019;&#24314;&#19968;&#20010;&#25511;&#21046;&#22120;<\/strong>&#65306;<code>HomeController<\/code> &#31867;&#23450;&#20041;&#20102;&#19968;&#20010; <code>index<\/code> &#26041;&#27861;&#65292;&#35813;&#26041;&#27861;&#36820;&#22238;&#19968;&#20010;&#28210;&#26579;&#22909;&#30340;&#27169;&#26495;&#12290;<\/li>\n<li><strong>&#21019;&#24314;&#19968;&#20010;&#27169;&#26495;&#25991;&#20214;<\/strong>&#65306;<code>index.html.twig<\/code> &#25991;&#20214;&#20351;&#29992;&#20102; Twig &#27169;&#26495;&#35821;&#27861;&#26469;&#26174;&#31034;&#24403;&#21069; URL&#12290;<code>path('homepage')<\/code> &#26159;&#19968;&#20010; Twig &#34920;&#36798;&#24335;&#65292;&#29992;&#20110;&#29983;&#25104;&#24403;&#21069;&#36335;&#30001;&#30340; URL&#12290;<\/li>\n<\/ol>\n<p>&#36816;&#34892;&#39033;&#30446;&#24182;&#35775;&#38382; <code>http:\/\/localhost:8000\/home<\/code>&#65292;&#20320;&#20250;&#30475;&#21040;&#39029;&#38754;&#19978;&#26174;&#31034;&#20102;&#24403;&#21069; URL&#12290;<\/p>\n<h3>&#31034;&#20363;&#20195;&#30721;<\/h3>\n<p>&#20197;&#19979;&#26159;&#19968;&#20010;&#23436;&#25972;&#30340;&#31034;&#20363;&#20195;&#30721;&#65292;&#23637;&#31034;&#20102;&#22914;&#20309;&#22312; Symfony &#20013;&#33719;&#21462;&#24403;&#21069; URL &#24182;&#23558;&#20854;&#26174;&#31034;&#22312; Twig &#27169;&#26495;&#20013;&#65306;<\/p>\n<pre><code class=\"language-php\">\/\/ src\/Controller\/HomeController.php\nnamespace AppController;\n\nuse SymfonyBundleFrameworkBundleControllerAbstractController;\nuse SymfonyComponentHttpFoundationResponse;\n\nclass HomeController extends AbstractController\n{\n    public function index()\n    {\n        return $this-&gt;render('home\/index.html.twig', [\n            'current_url' =&gt; $this-&gt;generateUrl('homepage'),\n        ]);\n    }\n}<\/code><\/pre>\n<pre><code class=\"language-twig\">&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n    &lt;meta charset=\"UTF-8\"&gt;\n    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n    &lt;title&gt;Home Page&lt;\/title&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n    &lt;h1&gt;Welcome to the Home Page&lt;\/h1&gt;\n    &lt;p&gt;The current URL is: {{ current_url }}&lt;\/p&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#31034;&#20363;&#20013;&#65292;&#25105;&#20204;&#36890;&#36807; <code>$this-&gt;generateUrl('homepage')<\/code> &#29983;&#25104;&#20102;&#24403;&#21069;&#36335;&#30001;&#30340; URL&#65292;&#24182;&#23558;&#20854;&#20256;&#36882;&#32473;&#27169;&#26495;&#20316;&#20026;&#21464;&#37327; <code>current_url<\/code>&#12290;&#36825;&#26679;&#65292;&#20320;&#22312;&#27169;&#26495;&#20013;&#23601;&#21487;&#20197;&#30452;&#25509;&#20351;&#29992;&#36825;&#20010;&#21464;&#37327;&#26469;&#26174;&#31034;&#24403;&#21069; URL&#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&#26500;&#24314;Web&#24212;&#29992;&#31243;&#24207;&#26102;&#65292;&#24744;&#21487;&#33021;&#20250;&#21457;&#29616;&#33258;&#24049;&#38656;&#35201;&#22312;Twig&#27169;&#26495;&#20013;&#33719;&#21462;&#24403;&#21069;&#39029;&#38754;&#30340;URL&#12290;&#24184;&#36816;&#30340;&#26159;&#65292;Symfony&#30340;&#28789;&#27963;&#27169;&#26495;&#24341;&#25806;Twig&#25552;&#20379;&#20102;&#22810;&#31181;&#26041;&#27861;&#26469;&#35775;&#38382;&#27492;&#20449;&#24687;&#12290;&#22312;&#36825;&#31687;&#25945;&#31243;&#20013;&#65292;&#25105;&#20204;&#23558;&#20171;&#32461;&#19981;&#21516;&#30340;&#26041;&#27861;&#65292;&#22312;Twig&#27169;&#26495;&#20013;&#33719;&#21462;&#24403;&#21069;URL&#65292;&#20174;&#22522;&#30784;&#20351;&#29992;&#21040;&#26356;&#39640;&#32423;&#30340;&#25216;&#26415;&#12290;&#36890;&#36807;&#26412;&#25945;&#31243;&#65292;&#24744;&#23558;&#22312;&#24744;&#30340;Symfony&#39033;&#30446;&#20013;&#25484;&#25569;&#21508;&#31181;&#19982;URL&#24037;&#20316;&#30340;&#26041;&#27861;&#12290;<\/p><h2>&#29702;&#35299;&#22522;&#30784;<\/h2><p>&#22312;&#28145;&#20837;&#20195;&#30721;&#31034;&#20363;&#20043;&#21069;&#65292;&#29702;&#35299;&#20801;&#35768;&#25105;&#20204;&#20174;Symfony&#20013;&#33719;&#21462;&#24403;&#21069;URL&#30340;&#24213;&#23618;&#32452;&#20214;&#38750;&#24120;&#37325;&#35201;&#12290;Twig&#27169;&#26495;&#26159;&#22312;&#26381;&#21153;&#22120;&#31471;&#28210;&#26579;&#30340;&#65292;&#36825;&#24847;&#21619;&#30528;&#20320;&#21487;&#20197;&#35775;&#38382;&#30001;Symfony&#25552;&#20379;&#30340;&#21508;&#31181;&#20840;&#23616;&#21464;&#37327;&#65292;&#20363;&#22914;&lsquo;app&rsquo;&#65292;&#36825;&#25552;&#20379;&#20102;&#20851;&#20110;&#35831;&#27714;&#12289;&#29992;&#25143;&#21644;&#20854;&#20182;&#20449;&#24687;&#30340;&#20449;&#24687;&#12290;<\/p><h3>&#22522;&#26412;&#31034;&#20363; &ndash; &lsquo;app&rsquo; &#20840;&#23616;&#21464;&#37327;<\/h3><p>&#35201;&#33719;&#21462;&#20854;&#26368;&#31616;&#24418;&#24335;&#30340;&#24403;&#21069;URL&#65292;&#35831;&#20351;&#29992;&#20840;&#23616;&#21464;&#37327;app&#65292;&#20197;&#21450;request&#21644;uri&#23646;&#24615;&#12290;&#20197;&#19979;&#26159;&#19968;&#20010;&#31034;&#20363;&#65306;<\/p><pre><code>{{ app.request.uri }}<\/code><\/pre><p>&#36825;&#27573;Twig&#20195;&#30721;&#20250;&#36755;&#20986;&#24403;&#21069;&#39029;&#38754;&#30340;&#23436;&#25972;URL&#65292;&#22914;&#26524;&#21253;&#21547;&#26597;&#35810;&#23383;&#31526;&#20018;&#30340;&#35805;&#12290;<\/p><h2>&#20351;&#29992; url &#21644; path &#20989;&#25968;&#12290;<\/h2><p>Symfony&#30340;Twig&#25193;&#23637;&#25552;&#20379;&#20102;&#20004;&#20010;&#29983;&#25104;URL&#30340;&#21151;&#33021;&#65306;&#8217;url&#8217;&#21644;&#8217;path&#8217;&#12290;&#34429;&#28982;&#8217;path&#8217;&#20250;&#29983;&#25104;&#30456;&#23545;URL&#65292;&#32780;&#8217;url&#8217;&#20250;&#29983;&#25104;&#32477;&#23545;URL&#12290;&#20197;&#19979;&#26159;&#20351;&#29992;&#23427;&#20204;&#33719;&#21462;&#24403;&#21069;&#39029;&#38754;URL&#30340;&#26041;&#27861;&#65306;<\/p><h3>&#29983;&#25104;&#32477;&#23545;URL&#12290;<\/h3><pre><code>{{ url('current_route_name') }}<\/code><\/pre><p>&#36825;&#23558;&#29983;&#25104;&#21517;&#20026; &#8216;current_route_name&#8217; &#30340;&#36335;&#30001;&#30340;&#32477;&#23545;URL&#12290;&#35201;&#20351;&#29992;&#27492;&#21151;&#33021;&#65292;&#35831;&#20808;&#30693;&#36947;&#35813;&#36335;&#30001;&#21517;&#31216;&#12290;&#24744;&#21487;&#20197;&#22312;&#24744;&#30340;Symfony&#36335;&#30001;&#37197;&#32622;&#20013;&#25214;&#21040;&#36825;&#20010;&#21517;&#31216;&#12290;<\/p><h3>&#29983;&#25104;&#30456;&#23545;URL<\/h3><pre><code>{{ path('current_route_name') }}<\/code><\/pre><p>&#21516;&#26679;&#65292;Twig &#34892;&#23558;&#29983;&#25104;&#24403;&#21069;&#36335;&#30001;&#21517;&#31216;&#30340;&#30456;&#23545;URL&#12290;<\/p><h2>&#33719;&#21462;&#24403;&#21069;&#36335;&#32447;&#20449;&#24687;<\/h2><p>&#22312;&#26576;&#20123;&#24773;&#20917;&#19979;&#65292;&#24744;&#21487;&#33021;&#38656;&#35201;&#26377;&#20851;&#24403;&#21069;&#36335;&#32447;&#30340;&#26356;&#22810;&#20449;&#24687;&#65292;&#20363;&#22914;&#20854;&#21442;&#25968;&#12290;Symfony &#25552;&#20379;&#20102; app.request.attributes &#23545;&#35937;&#26469;&#23454;&#29616;&#36825;&#19968;&#28857;&#65306;<\/p><pre><code>{{ app.request.attributes.get('_route') }}<\/code><\/pre><p>&#36825;&#20010;&#20989;&#25968;&#20250;&#36820;&#22238;&#24403;&#21069;&#36335;&#30001;&#30340;&#21517;&#31216;&#12290;&#20551;&#35774;&#20320;&#24819;&#21516;&#26102;&#33719;&#21462;&#36335;&#30001;&#30340;&#21442;&#25968;&#65292;&#37027;&#20040;&#20320;&#38656;&#35201;&#24590;&#20040;&#20570;&#21602;&#65311;<\/p><pre><code>{{ app.request.attributes.get('_route_params') }}<\/code><\/pre><p>&#36825;&#26465;&#32447;&#20250;&#36820;&#22238;&#24403;&#21069;&#36335;&#30001;&#30340;&#25152;&#26377;&#21442;&#25968;&#30340;&#25968;&#32452;&#12290;<\/p><h2>&#39640;&#32423;&#25216;&#26415;<\/h2><p>&#38543;&#30528;&#24212;&#29992;&#31243;&#24207;&#21464;&#24471;&#36234;&#26469;&#36234;&#22797;&#26434;&#65292;&#24744;&#21487;&#33021;&#38656;&#35201;&#23545;&#22914;&#20309;&#26816;&#32034;&#21644;&#25805;&#20316;URL&#36827;&#34892;&#26356;&#22810;&#30340;&#25511;&#21046;&#12290;&#35753;&#25105;&#20204;&#25506;&#32034;&#19968;&#20123;&#28041;&#21450;&#21019;&#24314;&#26381;&#21153;&#25110;&#21033;&#29992;&#31532;&#19977;&#26041;&#21253;&#30340;&#39640;&#32423;&#25216;&#26415;&#12290;<\/p><h3>&#21019;&#24314;&#33258;&#23450;&#20041;&#30340;Twig&#25193;&#23637;<\/h3><p>&#22914;&#26524;&#20320;&#21457;&#29616;&#33258;&#24049;&#22312;&#22810;&#20010;&#27169;&#26495;&#20043;&#38388;&#37325;&#22797;&#25191;&#34892;&#30456;&#20284;&#30340;&#20219;&#21153;&#65292;&#21487;&#20197;&#32771;&#34385;&#21019;&#24314;&#19968;&#20010;&#33258;&#23450;&#20041;&#30340;Twig&#25193;&#23637;&#65288;Twig extension&#65289;&#12290;&#19968;&#20010;&#33258;&#23450;&#20041;&#30340;Twig&#25193;&#23637;&#20801;&#35768;&#24744;&#23450;&#20041;Twig&#20989;&#25968;&#12289;&#36807;&#28388;&#22120;&#25110;&#20840;&#23616;&#21464;&#37327;&#12290;<\/p><p>&#36825;&#26159;&#19968;&#20010;&#25552;&#20379;&#19968;&#20010;&#33719;&#21462;&#24403;&#21069;URL&#20989;&#25968;&#30340;Twig&#25193;&#23637;&#30340;&#20363;&#23376;&#65306;<\/p><pre><code>use TwigExtensionAbstractExtension;\nuse TwigTwigFunction;\nuse SymfonyComponentHttpFoundationRequestStack;\n\nclass CurrentUrlExtension extends AbstractExtension\n{\n    private $requestStack;\n\n    public function __construct(RequestStack $requestStack)\n    {\n        $this-&gt;requestStack = $requestStack;\n    }\n\n    public function getFunctions()\n    {\n        return [\n            new TwigFunction('current_url', [$this, 'getCurrentUrl']),\n        ];\n    }\n\n    public function getCurrentUrl()\n    {\n        return $this-&gt;requestStack-&gt;getCurrentRequest()-&gt;getUri();\n    }\n}<\/code><\/pre><p>&#19968;&#26086;&#36825;&#20010;&#25193;&#23637;&#27880;&#20876;&#20026;&#26381;&#21153;&#24182;&#26631;&#35760;&#20026;&lsquo;twig.extension&rsquo;&#65292;&#20320;&#21487;&#20197;&#22312;Twig&#27169;&#26495;&#20013;&#20351;&#29992;&#26032;&#30340;&lsquo;current_url&rsquo;&#20989;&#25968;&#22914;&#65306;<\/p><pre><code>{{ current_url() }}<\/code><\/pre><p>&#36825;&#23558;&#36755;&#20986;&#24403;&#21069;&#30340;URL&#65292;&#20351;&#29992;&#24744;&#30340;&#33258;&#23450;&#20041;Twig&#20989;&#25968;&#12290;<\/p><h2>&#20351;&#29992;&#31532;&#19977;&#26041;&#21253;<\/h2><p>&#26368;&#21518;&#20294;&#21516;&#26679;&#37325;&#35201;&#30340;&#26159;&#65292;&#20320;&#21487;&#20197;&#21033;&#29992;&#31532;&#19977;&#26041;&#25193;&#23637;&#21253;&#26469;&#22686;&#24378;&#20320;&#30340;URL&#31649;&#29702;&#33021;&#21147;&#12290;&#20363;&#22914;&#65292;KnpMenuBundle&#22312;Symfony&#26694;&#26550;&#20013;&#29992;&#20110;&#26500;&#24314;&#33756;&#21333;&#65292;&#21516;&#26102;&#20063;&#33021;&#24110;&#21161;&#31649;&#29702;Twig&#27169;&#26495;&#20013;&#30340;URL&#12290;<\/p><h2>&#32467;&#35770;&#12290;<\/h2><p>&#32508;&#19978;&#25152;&#36848;&#65292;Symfony &#21644; Twig &#25552;&#20379;&#20102;&#22810;&#31181;&#26041;&#24335;&#26469;&#33719;&#21462;&#24403;&#21069;&#30340; URL&#65292;&#20174;&#31616;&#21333;&#30340;&#20840;&#23616;&#21464;&#37327;&#21040;&#33258;&#23450;&#20041;&#25193;&#23637;&#12290;&#36825;&#31181;&#28789;&#27963;&#24615;&#20351;&#24471;&#20320;&#21487;&#20197;&#26681;&#25454;&#24212;&#29992;&#30340;&#20855;&#20307;&#38656;&#27714;&#23450;&#21046; URL &#22788;&#29702;&#12290;&#26080;&#35770;&#26159;&#20026;&#33756;&#21333;&#29983;&#25104;&#38142;&#25509;&#36824;&#26159;&#36755;&#20986;&#24403;&#21069;&#30340; URL &#36827;&#34892;&#36861;&#36394;&#65292;Symfony &#37117;&#33021;&#20026;&#20320;&#25152;&#29992;&#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>&#35201;&#22312;Twig&#27169;&#26495;&#20013;&#33719;&#21462;&#24403;&#21069;&#30340;URL&#65292;&#20320;&#21487;&#20197;&#20351;&#29992;<code>Request<\/code>&#23545;&#35937;&#26469;&#23454;&#29616;&#36825;&#20010;&#21151;&#33021;&#12290;<code>Request<\/code>&#26159; Symfony &#30340;&#26680;&#24515;&#32452;&#25104;&#37096;&#20998;&#20043;&#19968;&#65292;&#23427;&#25552;&#20379;&#20102;&#19968;&#20010;&#38750;&#24120;&#28789;&#27963;&#30340;&#26041;&#24335;&#26469;&#22788;&#29702;HTTP&#35831;&#27714;&#12290;<\/p>\n<p>&#19979;&#38754;&#26159;&#22914;&#20309;&#22312; Twig &#27169;&#26495;&#20013;&#33719;&#21462;&#24403;&#21069; URL &#30340;&#31616;&#21333;&#31034;&#20363;&#65306;<\/p>\n<ol>\n<li>\n<p>&#39318;&#20808;&#65292;&#30830;&#20445;&#20320;&#22312; <code>composer.json<\/code> &#25991;&#20214;&#20013;&#28155;&#21152;&#20102; Symfony &#30340;&#20381;&#36182;&#65306;<\/p>\n<pre><code class=\"language-json\">{\n\"require\": {\n    \"symfony\/framework-bundle\": \"^4.3\"\n}\n}<\/code><\/pre>\n<\/li>\n<li>\n<p>&#22312;&#20320;&#30340;&#24212;&#29992;&#20013;&#24341;&#20837; Symfony &#24211;&#65306;<\/p>\n<pre><code class=\"language-php\">use SymfonyBundleFrameworkBundleFrameworkBundle;\nuse SymfonyComponentHttpFoundationRequest;<\/code><\/pre>\n<\/li>\n<li>\n<p>&#33719;&#21462;&#24403;&#21069;&#30340; URL&#65306;<\/p>\n<pre><code class=\"language-php\">$uri = Request::createFromGlobals();\n$url = $uri-&gt;getUri();<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>&#29616;&#22312;&#65292;&#24403;&#20320;&#23581;&#35797;&#28210;&#26579;&#24102;&#26377; URL &#30340; HTML &#26102;&#65292;&#21487;&#20197;&#20687;&#36825;&#26679;&#20351;&#29992; <code>$url<\/code> &#21464;&#37327;&#65306;<\/p>\n<pre><code class=\"language-html\">{{ url }}<\/code><\/pre>\n<p>&#25110;&#32773;<\/p>\n<pre><code class=\"language-html\">{{ url | escape }}<\/code><\/pre>\n<p>&#20854;&#20013; <code>escape<\/code> &#26159;&#19968;&#20010;&#36807;&#28388;&#22120;&#65292;&#29992;&#20110;&#23433;&#20840;&#22320;&#28210;&#26579; URL&#12290;\n&#20197;&#19978;&#23601;&#26159;&#22914;&#20309;&#22312; Twig &#27169;&#26495;&#20013;&#33719;&#21462;&#24403;&#21069; URL &#30340;&#22522;&#26412;&#26041;&#27861;&#12290;&#24076;&#26395;&#36825;&#23545;&#24744;&#26377;&#25152;&#24110;&#21161;&#65281;<\/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;&#20351;&#29992; Twig &#27169;&#26495;&#24341;&#25806;&#26469;&#33719;&#038;#214..<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false},"tags":[],"my1js2nav":[45],"tuisongtax":[],"class_list":["post-1143","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\/1143","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=1143"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tags?post=1143"},{"taxonomy":"my1js2nav","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js2nav?post=1143"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tuisongtax?post=1143"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}