Поиск…
замечания
В этом разделе приведен обзор того, что такое Symfony2 и почему разработчик может захотеть его использовать.
Следует также упомянуть любые крупные темы в Symfony2 и ссылки на связанные темы. Поскольку Documentation for Symfony2 является новым, вам может потребоваться создать начальные версии этих связанных тем.
Версии
Последняя стабильная версия на момент написания статьи - Symfony 3.1, которая будет поддерживаться до конца июля 2017 года.
Symfony имеет версии с поддержкой Long Term Support, которые поддерживаются в общей сложности 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, поддерживается рядом со старой реализацией, которая будет устаревать
Подробнее о версиях и процессе разработки см. В официальной документации [здесь] [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, является одной из ведущих фреймворков PHP, используемой для создания надежных веб-сайтов и веб-приложений.
Symfony можно быстро установить двумя рекомендуемыми способами.
- Официальная документация рекомендует установить инфраструктуру через установщик Symfony, который представляет собой крошечное приложение php, которое устанавливается один раз в локальной системе, что помогает загружать фреймворк и настраивать конфигурацию структуры. Установщик Symfony требует PHP 5.4 или новее. Для установки в старой версии PHP используйте Composer.
- Через менеджера зависимостей PHP Composer
Установка через Symfony Installer
В 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'));"
Проект symfony может быть создан путем запуска symfony new my_project [2.8]
в Linux / Mac OS X
В Windows php symfony new my_project [2.8]
или, альтернативно, symfony new my_project lts
будет использовать последнюю версию Symfony для долгосрочной поддержки.
Установка через композитор
Используйте команду
create-project
Composer для загрузки Symfonycomposer create-project symfony/framework-standard-edition my_project_name ["2.8.*"]
Отличная подробная официальная документация здесь
Запуск приложения Symfony
Для запуска внутреннего веб-сервера symfony (доступного с PHP 5.4) перейдите в каталог проекта и выполните следующую команду:
для symfony <= 2.8
php app/console server:start
и для symfony> = 3.0
php bin/console server:start
Это запустит веб-сервер на localhost:8000
в фоновом режиме, который служит вашему приложению Symfony. Затем откройте свой браузер и обратитесь к http://localhost:8000/
URL, чтобы увидеть страницу приветствия Symfony:
Самый простой пример в Symfony
- Установите symfony правильно, как указано выше.
- Запустите сервер symfony, если вы не установлены в каталоге www.
- Убедитесь, что http: // localhost: 8000 работает, если используется сервер symfony.
- Теперь он готов играть с простейшим примером.
- Добавьте следующий код в новый файл /src/AppBundle/Controller/MyController.php в каталоге установки symfony.
- Проверьте пример, посетив http: // localhost: 8000 / hello
(Если вы не используете встроенный http-сервер Symfony, посетите http: // localhost / (symfony-dir) /web/app_dev.php/hello) - Это все. Далее: используйте ветку, чтобы отобразить ответ.
<?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>'
);
}
}
ПРИМЕЧАНИЕ. Все классы контроллеров должны иметь концы со словом « Контроллер », а методы, связанные с маршрутами, должны заканчиваться словом « Действие ». Кроме того, в том случае, когда контроллер размещается в ваших действиях, не имеет значения, пока вы не определите префикс маршрута для контроллера.
Установка и настройка Symfony
Проверка требований
Запустите bin/symfony_requirements
для проверки требований symfony и настройки php cli. Установите все пакеты, необходимые для запуска проекта symfony. Настройка php.ini, например, установка часового пояса и short_open_tag. Установка php.ini для вашего веб-сервера php (например: /etc/php/apache2/php.ini) и php cli (например: /etc/php/cli/php.ini). Откройте http: //localhost/config.php для проверки настройки веб-сервера php. Если все прошло, вы готовы запустить свой проект symfony.
Запуск проекта
Запустите composer install
для установки всех зависимостей. Затем настройте разрешение для var/cache
, var/logs
и var/sessions
.
Подробная официальная документация здесь