починаємо проект

У кожному розділі, в додаток будуть додаватися нові функції і ми будемо використовувати такий підхід для поступового введення в Symfony фреймворк, а також дізнаємося про передовий досвід в веб-розробці на Symfony.

У цій частині, ви не будете писати код. Замість цього ви будете налаштовувати робоче середовище розробки.

Налаштування робочого середовища розробки

Перш за все вам потрібно перевірити, що ваш комп'ютер має соотвествующее програмне забезпечення для веб-розробки. В якості операційної системи ми будемо використовувати Ubuntu 12. З ПО як мінімум нам буде потрібно веб-сервер Apache, СУБД MySQL і PHP 5.3.3 або пізнішої версії. Для Windows рекомендую встановити XAMPP або OpenServer. там є все бібліотеки і вже налаштоване оточення для розробника. Також замість сервера Apache ви можете використовувати вбудований сервер в php 5.4 і вище, як це зробити буде тпоказано нижче.

Установка Apache, в якості основного веб-сервера

Перейдіть в термінал і введіть:

потім включите модуль Apache mod-rewrite:

Установка MySQL сервера

установка PHP

Установка розширення Intl:

Тепер вам потрібно перезапустити службу Apache:

Встановлюємо Symfony 2

Перше, що потрібно зробити - це підготувати каталог для веб-сервера, де ви хочете встановити новий проект. Назвемо його joboard: / var / www / joboard (каталог не створюйте).

Для того, щоб завантажити останню версію Symfony2 в цей каталог, нам необхідно встановити менеджер пакетів для PHP - Composer. Сам фреймворк і всі необхідні дл я нього бібліотеки будуть завантажені автоматично через цю утиліту.

Composer - менеджер залежностей сторонніх бібліотек для PHP, який також можна використовувати і для завантаження Symfony 2 Standard Edition.

Тепер давайте встановимо Composer, виконавши команду:

або якщо з якоїсь причини вона у вас не спрацювала, то можна встановити ось так:

А тепер сама установка Symfony2 Standart Edition (потрібно перейти в каталог / var / www /):

Конфігурація веб-сервера

Втроенний сервер PHP

Щоб налаштувати Apache для вашого нового проекту, створіть віртуальний хост. Щоб зробити це, перейдіть в ваш термінал і введіть наступну команду:

Доменне ім'я joboard.local. використовується в конфігурації Apache і має бути оголошено локально. Якщо ви працюєте в Linux, то прописати локальний домен можна в файлі / etc / hosts. Якщо ви працюєте в Windows, то цей файл розташований в каталозі C: ​​\ Windows \ System32 \ drivers \ etc \. Відкрийте цей файл і додайте наступний рядок:

Якщо ви хочете, щоб доменне ім'я запрацювало на локальному комп'ютері, вам потрібно включити щойно створений віртуальний хост і перезапустити Apache. Так що відкрийте термінал і введіть:

починаємо проект

З скриншота видно, що для нормальної роботи Symfony фреймворк визначає ряд вимог. Нижче наведено список дій, щоб вирішити всі зазначені проблеми.

Змініть дозволи на директорії app / cache і app / log:

Встановіть ACL, якщо у вас його ще немає:

Встановіть параметр date.timezone в php.ini

Якщо з setfacl у вас виникає помилка, то спробуйте наступні команди:

Знайдіть параметр date.timezone для секції [date] і встановіть його на свій часовий пояс. Після цього, видаліть «;», на початку рядка.

Встановіть параметр short_open_tag в значення Off в цьому ж файлі php.ini

Встановіть і включіть PHP прискорювач (APC рекомендується)

починаємо проект

Symfony2 поставляється з консольної утилітою, яку ви будете використовувати для багатьох завдань. Щоб побачити список завдань, які вона може для вас зробити, введіть у командному рядку:

Створення бандла додатки

Що таке бандл?

Бандл схожий на плагін в іншому програмному забезпеченні, але в Symfony фреймворку це щось більше. Основною відмінністю є те, що бандл в Symfony 2.4, включає основні функції ядра фреймворку і код написаний для вашого застосування. Бандл може містити контролери, моделі, роутинг і представляти із себе якийсь розділ на сайті, але також бандл може бути просто будь-якої бібліотекою.

Створення базової структури додатка

Виконайте наступну команду, щоб запустити генератор бандлів в Symfony:

Перед створенням бандла генератор задасть вам кілька запитань. Нижче наведені питання і відповіді (все, за винятком одного, є відповідями за замовчуванням):

Очистіть кеш після генерації нового бандла:

Як видалити AcmeDemoBundle

Symfony Standard Edition поставляється з повнофункціональним демо бандлом, який називається AcmeDemoBundle. Це хороший базовий бандл, для того, щоб періодично посилатися на нього, коли ви починаєте новий проект, але в підсумку ви ймовірно захочете видалити його.

Введіть команду, щоб видалити каталог Acme:

Перейдіть до: /var/www/joboard/app/AppKernel.php і видаліть:

і тепер видаліть з app / config / routing_dev.yml:

В кінці почистіть кеш.

Symfony 2 має різні оточення розробки. Якщо ви подивіться в каталозі веб-проекту, ви побачите два php файлу: app.php і app_dev.php. Ці файли називаються фронт-контролери; всі запити до додатка здійснюються через них. Файл app.php призначений для продуктової середовища і app_dev.php використовується веб-розробниками в процесі розробки (development - девелоперський оточення). Оточення development виявиться дуже зручним, тому що воно покаже вам всі помилки і попередження в процесі розробки, а веб-відладчик - кращий друг розробника.

Це все на сьогодні. Побачимося в наступній частині в якій ви дізнаєтеся про те, як буде працювати Joboard!

Статті з серії

Схожі статті