Symfony Demo
  • Trang chủ
  • CPU scale
  • Tìm kiếm
  • Chọn ngôn ngữ

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

Why every developer should aggregate subscriber (#1156)

lúc 06:41:40 10 tháng 3, 2026 Jane Doe

Sunt accentores vitare salvus flavum parses. Era brevis ratione est. Mauris dapibus risus quis suscipit vulputate. Pellentesque et sapien pulvinar consectetur. Sed varius a risus eget aliquam. Abnobas sunt hilotaes de placidus vita.

architecture database dolore performance tutorial

Understanding idempotent adapter in production (#1158)

lúc 06:13:18 10 tháng 3, 2026 Carol Williams

Bassus fatalis classiss virtualiter transferre de flavum. Nulla porta lobortis ligula vel egestas. Urna nisl sollicitudin id varius orci quam id turpis. Pellentesque et sapien pulvinar consectetur. Ubi est barbatus nix. Potus sensim ad ferox abnoba.

dolore incididunt tutorial

Building robust validator with best practices (#1191)

lúc 16:29:36 8 tháng 3, 2026 Carol Williams

Ut eleifend mauris et risus ultrices egestas. Ubi est barbatus nix. Teres talis saepe tractare de camerarius flavum sensorem. Era brevis ratione est. Nulla porta lobortis ligula vel egestas. Sed varius a risus eget aliquam.

advanced beginner dolore php refactoring

Understanding modular scheduler in production (#1190)

lúc 03:39:33 8 tháng 3, 2026 Tom Doe

Vae humani generis. In hac habitasse platea dictumst. Mineralis persuadere omnes finises desiderium. Ubi est audax amicitia. Diatrias tolerare tanquam noster caesium. Sunt accentores vitare salvus flavum parses. Era brevis ratione est.

advanced consectetur dolore incididunt pariatur

  • Trước
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17 (current)
  • Tiếp theo

Đây là một ứng dụng mẫu được xây dựng bằng Symfony để minh họa cách thức phát triển ứng dụng Symfony theo phương pháp khuyến nghị.

Để biết thêm thông tin, vui lòng tham khảo tài liệu Symfony.

Nhấp vào nút này để xem mã nguồn của controller và của template được sử dụng để hiển thị trang này.

Code nguồn được sử dụng để hiển thị trang này

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

Bài đăng blog RSS

© 2026 - The Symfony Project

Giấy phép MIT

X/Twitter RSS feed