symfony2symfony2入门


备注

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

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

版本

在撰写本文时,最新的稳定版本是Symfony 3.1 ,它将保留到2017年7月底。

Symfony有长期支持版本,共维护4年(错误修复3年,安全漏洞修复额外1年)

标准次要版本维护八个月的错误修复期,以及十四个月的安全问题修复期。

长期支持版本:

Symfony 2.3 - May 2016 end of support for bug fixes
              May 2017 end of support for security fixes(end of life)

Symfony 2.7 - May 2018 end of support for bug fixes
              May 2019 end of support for security fixes(end of life)

Symfony 2.8 - November 2018 end of support for bug fixes
              November 2019 end of support for security fixes(end of life)

从3.X版开始,次要版本将限制为5,最后一个次要版本将为LTS。

Syfmony具有双重维护模式,在五月一次和十一月一次发布六个月的次要版本。主要版本每两年发布一次,意味着从上一个主要版本到最新版本将有一年的时间段,让用户可以选择标准版本的最新功能或错误修复支持的LTS版本。

Symfony保持严格的向后兼容性,破坏BC的任何东西都在下一个主要版本中完成。一个功能实现是一个改进但是中断BC的功能实现与旧的实现一起保留,该实现将被弃用

从官方文档[here] [1]中详细了解版本和开发过程

[1]: http://symfony.com/doc/current/contributing/community/releases.html |版本|发布日期| | ------- | ------------ | | 2.3.0 | 2013-06-03 | | 2.7.0 | 2015-05-30 | | 2.8.0 | 2015-11-30 |

安装或设置

Symfony Framework - 使用symfony组件构建,是用于创建健壮的网站和Web应用程序的领先PHP框架之一。

可以通过两种推荐方式快速安装Symfony。

  1. 官方文档建议通过Symfony Installer安装框架,这是一个很小的php应用程序,在本地系统上安装一次,有助于下载框架和设置框架的配置。 Symfony Installer需要PHP 5.4或更高版本。要在旧版php上安装,请使用Composer。
  2. 通过PHP依赖管理器Composer

通过Symfony安装程序安装

在Linux / Mac OS X上运行以下命令:

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

在Windows上移动到项目目录并运行以下命令:

php -r "file_put_contents('symfony', file_get_contents('https://symfony.com/installer'));"
 

可以通过在Linux / Mac OS X上运行symfony new my_project [2.8] 来创建symfony项目

在Windows php symfony new my_project [2.8]

或者symfony new my_project lts 将使用最新的Symfony长期支持版本。

通过Composer安装

  • 下载Composer

  • 使用Composer的create-project 命令下载Symfony

    composer create-project symfony/framework-standard-edition my_project_name ["2.8.*"]
     

这里有详细的官方文档

运行Symfony应用程序

要启动symfony内部Web服务器(自PHP 5.4起可用),请转到项目目录并执行以下命令:

对于symfony <= 2.8

php app/console server:start
 

并且对于symfony> = 3.0

php bin/console server:start
 

这将在后台localhost:8000 启动Web服务器,为后台提供Symfony应用程序。然后,打开浏览器并访问http://localhost:8000/ URL以查看Symfony欢迎页面:

在此处输入图像描述

安装和配置Symfony

检查要求

运行bin/symfony_requirements 以检查symfony要求和php cli设置。安装运行symfony项目所需的所有软件包。设置php.ini例如设置timezone和short_open_tag。为你的php webserver设置php.ini(例如:/etc/php/apache2/php.ini)和php cli(例如:/etc/php/cli/php.ini)。打开http://localhost/config.php以检查php webserver设置。如果一切都过去了,您就可以运行symfony项目了。

运行项目

运行composer install 来安装所有依赖项。然后设置var/cachevar/logsvar/sessions 权限。

详细官方文档在这里

Symfony中最简单的例子

  1. 按照上面的指导正确安装symfony。
  2. 如果未安装在www目录中,请启动symfony服务器。
  3. 如果使用symfony服务器,请确保http:// localhost:8000正常工作。
  4. 现在它已准备好玩最简单的例子。
  5. 在symfony安装目录中的新文件/src/AppBundle/Controller/MyController.php中添加以下代码。
  6. 通过访问http:// localhost:8000 / hello来测试该示例
    (如果您没有使用Symfony的内置http服务器,请访问http:// localhost /(symfony-dir)/web/app_dev.php/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>'
        );
    }
}
 

注意:所有控制器类的末尾都应包含单词“ Controller ”,与routs相关的方法应以“ Action ”结尾。此外,在为控制器定义路径前缀之前,在哪个控制器中放置操作是不相关的。