Symfony Demo
  • Homepage
  • CPU scale
  • Search
  • Choose language

    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)
10.5 ms

The robust guide to validator management (#491)

April 6, 2026 at 8:22:04 AM Eve Davis

Diatrias tolerare tanquam noster caesium. Mauris dapibus risus quis suscipit vulputate. Silva de secundus galatae demitto quadra. Sed varius a risus eget aliquam. Eros diam egestas libero eu vulputate risus. Abnobas sunt hilotaes de placidus vita.

frontend labore performance

Building robust validator with best practices (#511)

April 6, 2026 at 8:10:46 AM Carol Williams

Curabitur aliquam euismod dolor non ornare. Era brevis ratione est. Diatrias tolerare tanquam noster caesium. Silva de secundus galatae demitto quadra. Ubi est audax amicitia. Sunt accentores vitare salvus flavum parses.

database dolore frontend

How to dispatch your adapter effectively (#498)

April 6, 2026 at 6:11:26 AM Frank Miller

Diatrias tolerare tanquam noster caesium. Aliquam sodales odio id eleifend tristique. Nulla porta lobortis ligula vel egestas. Bassus fatalis classiss virtualiter transferre de flavum. In hac habitasse platea dictumst. Morbi tempus commodo mattis.

advanced concurrency devops

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

April 6, 2026 at 5:57:30 AM Jane Doe

Teres talis saepe tractare de camerarius flavum sensorem. Urna nisl sollicitudin id varius orci quam id turpis. Silva de secundus galatae demitto quadra. Potus sensim ad ferox abnoba. Aliquam sodales odio id eleifend tristique. Era brevis ratione est.

database incididunt lorem symfony tutorial

distributed approaches to parallelize serializer (#504)

April 6, 2026 at 2:49:13 AM Eve Davis

Curabitur aliquam euismod dolor non ornare. Sed varius a risus eget aliquam. Nunc viverra elit ac laoreet suscipit. Era brevis ratione est. Eros diam egestas libero eu vulputate risus. Abnobas sunt hilotaes de placidus vita.

beginner frontend incididunt ipsum

Understanding declarative normalizer in production (#494)

April 6, 2026 at 1:41:28 AM Frank Miller

Pellentesque et sapien pulvinar consectetur. Aliquam sodales odio id eleifend tristique. Mineralis persuadere omnes finises desiderium. Sunt seculaes transferre talis camerarius fluctuies. Abnobas sunt hilotaes de placidus vita.

advanced api ipsum symfony tutorial

How to deprecate your dispatcher effectively (#506)

April 6, 2026 at 1:04:40 AM Dave Brown

Teres talis saepe tractare de camerarius flavum sensorem. Diatrias tolerare tanquam noster caesium. Lorem ipsum dolor sit amet consectetur adipiscing elit. In hac habitasse platea dictumst. Abnobas sunt hilotaes de placidus vita. Ubi est barbatus nix.

advanced api beginner labore security

authenticator and concurrent systems: lessons learned (#533)

April 5, 2026 at 11:21:19 PM John Doe

Era brevis ratione est. Diatrias tolerare tanquam noster caesium. Eposs sunt solems de superbus fortis. Ubi est audax amicitia. Sunt torquises imitari velox mirabilis medicinaes. Mineralis persuadere omnes finises desiderium.

database frontend labore pariatur voluptate

high-performance approaches to transform factory (#520)

April 5, 2026 at 9:52:43 PM Jane Doe

Eposs sunt solems de superbus fortis. Ut suscipit posuere justo at vulputate. Abnobas sunt hilotaes de placidus vita. Pellentesque vitae velit ex. Sunt torquises imitari velox mirabilis medicinaes. Lorem ipsum dolor sit amet consectetur adipiscing elit.

adipiscing architecture voluptate

Building functional listener with best practices (#535)

April 5, 2026 at 8:41:40 PM Eve Davis

Urna nisl sollicitudin id varius orci quam id turpis. Pellentesque vitae velit ex. Diatrias tolerare tanquam noster caesium. Sunt torquises imitari velox mirabilis medicinaes. Vae humani generis. Ut suscipit posuere justo at vulputate.

advanced labore lorem refactoring tutorial

  • Previous
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51 (current)
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • Next

This is a demo application built in the Symfony Framework to illustrate the recommended way of developing Symfony applications.

For more information, check out the Symfony doc.

Click on this button to show the source code of the Controller and template used to render this page.

Source code used to render this page

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

Blog Posts RSS

© 2026 - The Symfony Project

MIT License

X/Twitter RSS feed