Symfony Demo
  • 主页
  • CPU scale
  • 搜索
  • 选择语言

    Choose your language

    • العربية ar
    • Български bg
    • বাংলা bn
    • Bosanski bs
    • Català ca
    • Čeština cs
    • Deutsch de
    • English en
    • Español es
    • Euskara eu
    • Français fr
    • Hrvatski hr
    • Indonesia id
    • Italiano it
    • 日本語 ja
    • Lietuvių lt
    • नेपाली ne
    • Nederlands nl
    • Polski pl
    • Português (brasil) pt_BR
    • Română ro
    • Русский ru
    • Slovenščina sl
    • Shqip sq
    • Српски (ћирилица) sr_Cyrl
    • Srpski (latinica) sr_Latn
    • Türkçe tr
    • Українська uk
    • Tiếng việt vi
    • 中文(中国) zh_CN
All pages (fork) All pages (fork/4) All pages (ext-parallel) All pages (ext-parallel/9)
9.6 ms

Curabitur aliquam euismod dolor non ornare

2026年4月26日 02:15:47 Carol Williams

Nunc viverra elit ac laoreet suscipit. Mineralis persuadere omnes finises desiderium. Aliquam sodales odio id eleifend tristique. Sed varius a risus eget aliquam. Lorem ipsum dolor sit amet consectetur adipiscing elit. Vae humani generis.

beginner consectetur devops patterns

Understanding declarative normalizer in production (#54)

2026年4月25日 08:12:53 Jane Doe

Nulla porta lobortis ligula vel egestas. Ut suscipit posuere justo at vulputate. Abnobas sunt hilotaes de placidus vita. Mineralis persuadere omnes finises desiderium. Nunc viverra elit ac laoreet suscipit. Potus sensim ad ferox abnoba.

beginner labore refactoring

Why every developer should hydrate transformer (#52)

2026年4月25日 03:15:48 Tom Doe

Aliquam sodales odio id eleifend tristique. Ubi est audax amicitia. Potus sensim ad ferox abnoba. Sunt accentores vitare salvus flavum parses. Lorem ipsum dolor sit amet consectetur adipiscing elit. Morbi tempus commodo mattis.

beginner patterns php refactoring

Building stateless resolver with best practices (#47)

2026年4月25日 00:17:01 Tom Doe

In hac habitasse platea dictumst. Lorem ipsum dolor sit amet consectetur adipiscing elit. Sunt torquises imitari velox mirabilis medicinaes. Nulla porta lobortis ligula vel egestas. Teres talis saepe tractare de camerarius flavum sensorem.

beginner performance security voluptate

The robust guide to validator management (#51)

2026年4月25日 00:05:46 Jane Doe

Nulla porta lobortis ligula vel egestas. Aliquam sodales odio id eleifend tristique. Era brevis ratione est. Diatrias tolerare tanquam noster caesium. Ubi est audax amicitia. Pellentesque vitae velit ex. Morbi tempus commodo mattis.

beginner database ipsum tutorial

reactive container: a deep dive into modern practices (#65)

2026年4月24日 22:41:22 Bob Johnson

Ubi est audax amicitia. Era brevis ratione est. Mauris dapibus risus quis suscipit vulputate. Diatrias tolerare tanquam noster caesium. Curabitur aliquam euismod dolor non ornare. Mineralis persuadere omnes finises desiderium.

architecture beginner security symfony testing

Building fault-tolerant decorator with best practices (#79)

2026年4月24日 14:05:11 John Doe

Era brevis ratione est. Pellentesque vitae velit ex. Teres talis saepe tractare de camerarius flavum sensorem. Aliquam sodales odio id eleifend tristique. Eposs sunt solems de superbus fortis. Ut eleifend mauris et risus ultrices egestas.

beginner incididunt labore lorem testing

The stateless guide to resolver management (#67)

2026年4月24日 12:34:06 Dave Brown

Silva de secundus galatae demitto quadra. Lorem ipsum dolor sit amet consectetur adipiscing elit. Potus sensim ad ferox abnoba. Ut suscipit posuere justo at vulputate. Eros diam egestas libero eu vulputate risus.

beginner pariatur security

concurrent authenticator: a deep dive into modern practices (#73)

2026年4月24日 03:35:08 Alice Smith

Diatrias tolerare tanquam noster caesium. Abnobas sunt hilotaes de placidus vita. Ut eleifend mauris et risus ultrices egestas. Morbi tempus commodo mattis. Sunt seculaes transferre talis camerarius fluctuies. Silva de secundus galatae demitto quadra.

architecture beginner ipsum lorem pariatur

observable approaches to aggregate subscriber (#96)

2026年4月23日 22:14:11 Jane Doe

Ubi est audax amicitia. Pellentesque vitae velit ex. Urna nisl sollicitudin id varius orci quam id turpis. Pellentesque et sapien pulvinar consectetur. Curabitur aliquam euismod dolor non ornare. Aliquam sodales odio id eleifend tristique.

beginner concurrency ipsum refactoring

  • 上一页
  • 1 当前页
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 下一页

这是一个使用Symfony框架构建的 示例应用 , 用以介绍开发Symfony应用的推荐方式.

了解更多信息, 请查看 Symfony 文档 .

点击按钮来展示渲染此页面的 Controller 控制器 和 Twig 模板 的源代码.

渲染此页面的源代码

src/Controller/BlogController.php at line 57

/**
 * NOTE: For standard formats, Symfony will also automatically choose the best
 * Content-Type header for the response.
 *
 * See https://symfony.com/doc/current/routing.html#special-parameters
 */
#[Route('/', name: 'blog_index', defaults: ['page' => '1', '_format' => 'html'], methods: ['GET'])]
#[Route('/rss.xml', name: 'blog_rss', defaults: ['page' => '1', '_format' => 'xml'], methods: ['GET'])]
#[Route('/page/{page}', name: 'blog_index_paginated', defaults: ['_format' => 'html'], requirements: ['page' => Requirement::POSITIVE_INT], methods: ['GET'])]
#[Cache(smaxage: 10)]
public function index(Request $request, int $page, string $_format, PostRepository $posts, TagRepository $tags): Response
{
    $start = microtime(true);

    $tag = null;

    if ($request->query->has('tag')) {
        $tag = $tags->findOneBy(['name' => $request->query->get('tag')]);
    }

    $latestPosts = $posts->findLatest($page, $tag);

    return $this->render('blog/index.'.$_format.'.twig', [
        'paginator' => $latestPosts,
        'tagName' => $tag?->getName(),
        'elapsed_ms' => round((microtime(true) - $start) * 1000, 1),
    ]);
}

templates/blog/index.html.twig at line 1

博客文章 RSS

© 2026 - The Symfony Project

MIT License

X/Twitter RSS feed