symfony3symfony3入门


备注

本节概述了symfony3是什么,以及开发人员可能想要使用它的原因。

它还应该提到symfony3中的任何大型主题,并链接到相关主题。由于symfony3的文档是新的,您可能需要创建这些相关主题的初始版本。

版本

发布日期
3.0.0 2015年11月30日
3.1.0 二零一六年五月三十零日
3.2.0 二零一六年十一月三十零日
3.2.5 2017年3月9日
3.2.6 2017年3月10日
3.2.7 2017年4月5日

1.安装Symfony安装程序

安装程序需要PHP 5.4或更高版本。如果您仍使用旧版PHP 5.3,则无法使用Symfony Installer。阅读创建没有安装程序的Symfony应用程序部分以了解如何继续。 - 来源: http//symfony.com/doc/current/book/installation.html

2. Linux和Mac OS X系统

打开命令控制台并执行以下命令:

$ sudo curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony
$ sudo chmod a+x /usr/local/bin/symfony
 

3. Windows系统

您必须将php添加到路径环境变量中。遵循以下步骤:

Windows 7的 :

  • 右键单击“我的电脑”图标
  • 单击属性
  • 单击左侧导航中的“高级系统设置”
  • 单击高级选项卡
  • 单击“环境变量”按钮
  • 在“系统变量”部分中,选择“路径(不区分大小写)”,然后单击“编辑”按钮
  • 在字符串的末尾添加一个分号(;),然后添加PHP安装的完整文件系统路径(例如C:\Program Files\PHP
  • 继续单击“确定”等,直到所有对话框都消失
  • 关闭命令提示符并再次打开它
  • 排序

Windows 8和10

  • 在搜索中,搜索然后选择:系统(控制面板)
  • 单击“高级系统设置”链接。
  • 单击“环境变量”。
  • 在“系统变量”部分中,找到PATH环境变量并选择它。单击编辑。如果PATH环境变量不存在,请单击“新建”。
  • 添加PHP安装的完整文件系统路径(例如C:\Program Files\PHP

在此之后,打开命令控制台并执行以下命令:

c:\> php -r "readfile('https://symfony.com/installer');" > symfony
 

然后,将下载的symfony文件移动到项目的目录并按如下所示执行:

c:\> move symfony c:\projects
c:\projects\> php symfony
 

4.创建Symfony应用程序

Symfony安装程序可用后,使用新命令创建第一个Symfony应用程序:

# Linux, Mac OS X
$ symfony new my_project_name

# Windows
c:\> cd projects/
c:\projects\> php symfony new my_project_name
 

此命令可以从任何地方运行,不一定从htdocs 文件夹运行。

此命令创建一个名为my_project_name/ 的新目录,其中包含一个基于最新稳定Symfony版本的全新项目。此外,安装程序会检查您的系统是否满足执行Symfony应用程序的技术要求。如果没有,您将看到满足这些要求所需的更改列表。

5.根据特定的Symfony版本设置项目

如果您的项目需要基于特定的Symfony版本,请使用新命令的可选第二个参数:

# use the most recent version in any Symfony branch
$ symfony new my_project_name 2.8
$ symfony new my_project_name 3.1

# use a specific Symfony version
$ symfony new my_project_name 2.8.1
$ symfony new my_project_name 3.0.2

# use a beta or RC version (useful for testing new Symfony versions)
$ symfony new my_project 3.0.0-BETA1
$ symfony new my_project 3.1.0-RC1
 

安装程序还支持一个名为lts的特殊版本,它安装了最新的Symfony LTS版本:

$ symfony new my_project_name lts
 

阅读Symfony发布流程,以更好地了解为什么有几个Symfony版本以及哪个版本用于您的项目。

您也可以在没有安装程序的情况下创建symfony应用程序,但这不是一个好主意。无论如何,请按照此链接上的原始教程:

Oficial Symfony Docs,在没有安装程序的情况下配置Symfony

创建页面

在继续之前,请确保您已阅读“ 安装”章节,并可以在浏览器中访问新的Symfony应用程序。

假设您要创建一个页面 - / lucky / number - 生成一个幸运的(好的,随机的)数字并打印出来。为此,在其中创建一个“Controller类”和一个“控制器”方法,当有人进入/ lucky / number时将执行该方法

// src/AppBundle/Controller/LuckyController.php
namespace AppBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;

class LuckyController
{
    /**
     * @Route("/lucky/number")
     */
    public function numberAction()
    {
        $number = rand(0, 100);

        return new Response(
            '<html><body>Lucky number: '.$number.'</body></html>'
        );
    }
}

Symfony中最简单的例子

  1. 按照上面的指导正确安装symfony。
  2. 如果未安装在www目录中,请启动symfony服务器。
  3. 如果使用symfony服务器,请确保http:// localhost:8000正常工作。
  4. 现在它已准备好玩最简单的例子。
  5. 在symfony安装目录中的新文件/src/AppBundle/Controller/MyController.php中添加以下代码。
  6. 通过访问http:// localhost:8000 / hello来测试该示例
  7. 就这样。下一步:使用twig呈现响应。
<?php
// src/AppBundle/Controller/MyController.php

namespace AppBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;

class MyController
{
    /**
     * @Route("/hello")
     */
    public function myHelloAction()
    {
        return new Response(
            '<html><body>
                   I\'m the response for request <b>/hello</b>
             </body></html>'
        );
    }
}