Symfony for PHP:完整指南及示例

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

什么是 Symfony,为什么需要它?



Symfony 是一个功能强大、成熟且最流行的 组件化框架 之一,适用于 PHP 语言。它用于构建 Web 应用程序,从小型网站到复杂的企业级系统。与单体框架不同,Symfony 基于模块化原则构建:它由一组独立、文档完善且可复用的组件(库)组成。您可以在任何其他 PHP 项目中,既可以使用整个框架,也可以仅使用其个别组件(例如,仅使用 HTTP 请求或路由组件)。



为什么需要它?

  • 加速开发: Symfony 为典型任务提供现成解决方案:路由、数据库操作(通过 Doctrine ORM)、模板化(Twig)、身份验证、表单处理、缓存等。您无需重复造轮子。
  • 结构化和可维护性: 该框架强制执行清晰的架构(MVC — 模型-视图-控制器),使代码组织有序、可预测且易于其他开发人员维护。
  • 可靠性和安全性: Symfony 内置了针对常见漏洞(CSRF、XSS、SQL 注入)的保护机制。它被用于 Drupal、phpBB 等巨头以及许多企业级项目中。
  • 社区和生态系统: 庞大的社区、数千个现成的扩展包(bundles)、出色的文档和长期支持(LTS 版本)。
  • 灵活性: 您可以从微框架(Symfony MicroKernel)开始构建 API,并随着项目增长逐步添加所需组件。


安装 Symfony



与 Python(使用 pip)不同,PHP 中使用 Composer 管理依赖项。安装 Symfony 包括两个步骤:安装安装程序本身(Symfony CLI)和创建项目。



1. 安装 Composer

如果您还没有 Composer,请从官方网站 getcomposer.org 下载并安装。它是 PHP 的全局工具。

# 检查 Composer 安装composer --version


2. 安装 Symfony CLI(推荐)

Symfony CLI 是一个方便的工具,用于创建、管理和运行项目。

# 在 macOS/Linux 上安装(通过 curl)curl -sS https://get.symfony.com/cli | bash

# 在 Windows 上安装(通过 Chocolatey)choco install symfony-cli

# 检查安装symfony --version


3. 创建新项目

使用 symfony new 命令创建应用程序骨架。

# 创建完整 Web 应用程序(使用 Symfony Flex)symfony new my_project --full

# 创建微应用程序(用于 API)symfony new my_api_project

如果您不想安装 CLI,可以直接使用 Composer:

composer create-project symfony/skeleton:"7.0.*" my_project# 或者用于完整应用程序:composer create-project symfony/website-skeleton:"7.0.*" my_project


快速入门与代码示例



让我们使用 Symfony 创建一个简单的 "Hello, World!" 页面。



1. 创建控制器

控制器是处理请求并返回响应的 PHP 类。创建文件 src/Controller/HelloController.php:

<?php// src/Controller/HelloController.php

namespace App\\Controller;

use Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;use Symfony\\Component\\HttpFoundation\\Response;use Symfony\\Component\\Routing\\Annotation\\Route;

class HelloController extends AbstractController{ #[Route('/hello/{name}', name: 'hello_page')]

推荐