直接用 composer create-project symfony/website-skeleton 创建项目,5 分钟内就能在浏览器看到欢迎页并跑通 mvc 流程;它自动集成 twig、doctrine、makerbundle 等组件,省去手动配置,执行命令后验证 flex 启用、启动服务、生成控制器并访问 /home 路由即可确认全流程通畅。

直接用 composer create-project symfony/website-skeleton 创建项目,5 分钟内就能在浏览器看到欢迎页并跑通 MVC 流程。别从空骨架或手动配置起步,容易卡在环境、路由或模板渲染上。
一、创建可运行的项目(带完整 Web 堆栈)
运行这一条命令即可:
composer create-project symfony/website-skeleton myapp
它自动安装 Twig、WebProfilerBundle、Doctrine、MakerBundle 和 Flex 配置中枢,省去手动启用和路径配置的麻烦。
- 进目录后立刻验证 Flex 是否就位:
cd myapp && php bin/console about,确认输出中含 Flex: enabled - 检查 PHP 版本是否 ≥8.1:
php -v;确认必要扩展已启用:php -m | grep -E "(mbstring|xml|curl|intl|fileinfo)" - 确保
.env文件中为开发模式:APP_ENV=dev和APP_DEBUG=1
二、启动服务并确认欢迎页
有两种推荐方式,任选其一:
- 已安装 Symfony CLI:运行
symfony server:start,然后访问 https://www.php.cn/link/261f67921edd024375a9a83e9ddf6a47 - 未装 CLI:运行
php -S 127.0.0.1:8000 -t public(注意是-t public,不是public/index.php)
看到 Symfony 的紫色欢迎页,说明 Web 服务、路由和基础响应链路全部通畅。
三、生成控制器并渲染动态内容
让页面“活”起来,走通控制器 → 模板 → 浏览器的数据流:
- 运行
php bin/console make:controller HomeController - 编辑
src/Controller/HomeController.php,把index()方法改成:
return $this->render('home/index.html.twig', ['name' => '王五']);
- 在
templates/home/index.html.twig中写:<h1>你好,{{ name }}!</h1> - 访问 https://www.php.cn/link/261f67921edd024375a9a83e9ddf6a47/home,看到带名字的标题,MVC 就真正动起来了
四、掌握四个高频命令(日常必用)
不用背全量命令,先熟记这四个,覆盖开发主要场景:
-
php bin/console list—— 查命令列表,随时翻看,不靠记忆 -
php bin/console make:entity User—— 生成实体类,交互式输入字段名与类型,自动写好 Doctrine 映射 -
php bin/console doctrine:migrations:diff && php bin/console doctrine:migrations:migrate—— 自动比对模型差异并建表,无需手写 SQL -
php bin/console cache:clear—— 修改配置、路由或模板后必执行,避免因缓存导致 500 错误
开发时右下角的紫色调试栏会实时显示请求信息、数据库查询、模板变量等,是定位问题的第一入口。











