Вступ у рамки PHP

Перш ніж глибоко зрозуміти рамки PHP, давайте поговоримо про те, навіщо нам потрібні рамки, і як вони полегшують життя розробника?

Щоразу, коли ми хочемо розробити веб-сайт, багато речей в архітектурі повинні бути узгоджені, перш ніж приступити до фактичної лінії, як, наприклад, вирішити, як веб-виклик буде проходити шлях від клієнтської до серверної сторони, яка без втрати загальності включає перевірка виду запиту (Get, Post або Put), ведення журналу аудиту, керування перехоплювачами тощо.

Якщо ви хочете скористатися ванільним підходом, не включаючи жодних фреймворків, то, ймовірно, від обробки дзвінків до безпеки (наприклад, сценарій між сайтом), вам доведеться керувати всіма примірниками, тим самим, швидше за все, найняти декількох розробників для того ж, що, на жаль, збільшить вартість розробки програми.

Тепер давайте зануримося в те, які у нас є рамки для розвитку PHP, і виберемо найкращу, яка підходить для розробки нашого додатку (маючи на увазі ділову сферу, для якої робиться розробка та наскільки суворі правила бізнесу).

Список фреймів PHP

Ось список найкращих фреймворків PHP, заснований на популярності та здатності сприяти розробці додатків.

Ларавель

Це структура з відкритим кодом, що відповідає архітектурі, заснованій на модельному представленні та контролері. Різні функції, які він надає -

  1. Композитор доступний з моменту появи Laravel 4, і він діє як менеджер залежностей, щоб додати фреймворк.
  2. Красномовний ORM, тобто активна реалізація структури запису.
  3. Query Builder забезпечує набір класів.
  4. Laravel надихає надзвичайно чистий і читабельний код, тим самим зберігаючи життя розробників.
  5. Laravel пропонує надійну безпеку веб-додатків, оскільки вона включає хешування паролів, шифрування, підтвердження електронної пошти, автентифікацію API.
  6. Захищена та безпечна маршрутизація, усі маршрути Laravel визначені в каталозі маршрутів, і ці файли автоматично завантажуються рамкою.
  7. До URL-адрес додається маркер CSRF, щоб запобігти підробці веб-сайтів.
  8. На передній панелі рамки пропонуються такі функції, як шаблон Blade (шаблонна система), локалізація, Javascript та CSS ліси.
  9. Підтримує Redis (сховище ключових значень), розширення сторінок, міграції (спільна схема бази даних), висівання баз даних,
  • Вимоги до сервера перед роботою з Laravel.

Найкраще використовувати віртуальну машину Laravel Homestead, тому дуже рекомендується використовувати це як наше місцеве середовище розробки Laravel.

Якщо ви не використовуєте Homestead, потрібно:

  • PHP> = 7.1.3
  • Розширення PHP OpenSSL
  • Розширення PDO PHP
  • Mbstring Розширення PHP
  • Розширення PHP Tokenizer
  • Розширення XML PHP
  • Розширення PHP Ctype
  • Розширення JSON PHP
  • Розширення BCMath PHP

Встановлення Laravel

Laravel використовує композитора для управління своїми залежностями, тому головна вимога полягає в тому, щоб композитор був попередньо встановлений.

Потім завантажте інсталятор Laravel за допомогою композитора, як зазначено нижче.

Композитор глобального вимагає Laravel / інсталятор.

  • Створення проекту за допомогою композитора

Створення-проект композитора - віддайте перевагу блогу Laravel / Laravel

  • Локальний сервер розвитку

php ремісник подавати

CodeIgniter

CodeIgniter - це рамка розробки з відкритим кодом, наведені нижче функції, що надаються ним:

  1. Він не вимагає суворої реалізації контролера Model-view, контролер обов'язково потрібен, модель та перегляд необов’язкові.
  2. Функції помічників є, як-от URL-адреса, яка допомагає створювати посилання, там допомагають формуляри, текстові помічники для форматування тексту, а помічники файлів cookie - для встановлення та читання файлів cookie.
  3. Ви можете створювати нові бібліотеки, замінювати та видаляти власні бібліотеки.
  4. Функція гачків забезпечує засіб підключення та зміни внутрішніх функцій рамки без злому основних файлів.
  5. Існує функція автоматичного завантаження, яка дозволяє бібліотеки, помічники та моделі автоматично ініціалізуватися при кожному запуску системи.
  6. CodeIgniter забезпечує функцію кешування сторінок, тим самим підвищуючи продуктивність.
  7. CodeIgniter має клас реєстрації помилок, який дозволяє зберігати повідомлення про помилки та налагодження як текстові файли.
  8. Маршрутизація URI там, рядок URL однозначно відображається на контролері.
  9. Хешування паролів існує для версії PHP> 5.5
  10. У частині бази даних різні надані функції - це QueryBuilder, QueryCaching, транзакції тощо.
  11. Змінні середовища можуть бути встановлені для того, щоб визначити, де потрібно запускати додаток, тобто із середовищем розробки або виробництвом.
  • Як встановити CodeIgniter -
  1. Завантажте CodeIgniter з клацання тут
  2. Розпакуйте пакет.
  3. Завантажте папки та файли CodeIgniter на свій сервер. Зазвичай файл index.php буде в корені.
  4. Відкрийте додаток / config / config.php файл із текстовим редактором та встановіть базову URL-адресу. Якщо ви плануєте використовувати шифрування або сеанси, встановіть ключ шифрування.
  5. Якщо ви плануєте використовувати базу даних, відкрийте файл application / config / database.php з текстовим редактором та встановіть налаштування бази даних.

Симфонія

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

Symfony поєднаний із такими функціями -

  1. Локалізована маршрутизація (i18n) надається, таким чином маршрути можуть бути локалізовані, щоб забезпечити унікальні шляхи на місцевість. За допомогою Symfony ці маршрути можна записувати без дублювання, також підтримуються символи підстановки.
  2. Шаблони гілочок є, вони прості і не обробляють теги PHP, гілочка може робити автоматичний вихід HTML, ручний контекстний вихід та ввімкнення деяких фільтрів.
  3. Кешування шаблонів Twig робить процес швидким, оскільки шаблони збираються у рідний клас PHP та кешуються.
  4. Компонент активів існує для створення URL-версій та версій CSS, JS та зображень.
  5. Компонент BrowserKit є для імітації поведінки веб-браузера, що дозволяє робити запити, натискати на посилання та подавати форми програмно.
  6. Компонент ін'єкційних залежностей є, який реалізує сумісний контейнер служб PSR-11, який дозволяє стандартизувати та централізувати об'єкти в додатку.
  7. Компонент DOMCrawler є для полегшення навігації DOM для документів HTML та XML.
  8. Компонент Dotenv існує для створення змінних середовища, що зберігаються у змінних .env.
  9. Диспетчер подій існує, щоб компоненти могли спілкуватися за допомогою відправки подій та їх прослуховування.
  10. Компонент LDAP вже присутній для зв'язку з сервером LDAP.
  11. Компонент ExpressionLanguage забезпечує двигун, який може компілювати та оцінювати вирази.
  12. Компонент Polyfill / APCu забезпечує функції apcu_ * та клас ACPUIterator для користувачів старого розширення APC.
  13. Компонент серіалізатора є для перетворення об'єктів у формати, такі як JSON, XML або YAML.
  • Кроки встановлення

Використовуйте наступні кроки для завантаження, композитор має бути попередньо встановлений у системі -

Композитор вимагає симфонії / активу

Для завантаження окремих компонентів, як було зазначено вище, відвідайте -

https://symfony.com/components

CakePHP

CakePHP - це платформа з відкритим кодом, що робить створення веб-додатків простим і швидшим, вимагає менше коду. CakePHP має такі функції -

  1. Забезпечує риштування для швидкої побудови прототипів.
  2. У CakePHP є клас кешу, який підтримує кешування і забезпечує статичний інтерфейс та єдиний API для взаємодії з різними реалізаціями кешування.
  3. Клас Hash забезпечує статичні утиліти, які роблять правильне управління масивом, тим самим роблячи код оптимізованим.
  4. Клас Inflector передбачений для маніпулювання наданими рядками та обробкою варіантів слів, таких як плюралізація та компіляція.
  5. У CakePHP журнал простий, функцію log () забезпечує LogTrait.
  6. Найшвидший спосіб піднятися та запустити REST - додати кілька рядків для налаштування маршрутних ресурсів у config / routes.php
  7. Пакет перевірки в CakePHP надає функції для побудови валідаторів, які можуть легко перевірити довільні масиви даних.
  8. Підтримуються різні плагіни для використання спільно з CakePHP, і це Chronos (забезпечує колекцію розширень з нульовою залежністю до об’єкта DateTime), DebugKit (має панель інструментів налагодження та вдосконалені інструменти налагодження), ElasticSearch (надає ORM як абстракцію на зверху еластичного пошуку, робить тестування та індексацію документів простим).
  9. Phinx та CakePHP, phinx дозволяє розробникам чітко змінювати та маніпулювати базами даних. Не потрібно вручну писати SQL, швидше phinx надає потужні API для створення міграцій за допомогою PHP-коду.
  10. Консоль Bake передбачена для швидшого запуску CakePHP, консоль запікання може створювати моделі, види, поведінку, тестові кейси, світильники та плагіни.

Phinx можна просто встановити:

php композитор. phar вимагають robmorgan / phinx

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

  • Установка та передумови:

Опишемо певні передумови, які повинні бути задоволені, перш ніж розпочати встановлення:

  1. HTTP-сервер (Apache, Nginx або Microsoft IIS)
  2. PHP 7.3
  3. mbstring розширення PHP
  4. intl розширення PHP (якщо використовується XAMPP, розширення intl має бути включене, але переконайтесь, що відмініть розширення = php_intl.dll в Php.ini та перезапустіть сервер XAMPP через панель керування, якщо ви використовуєте WAMP, розширення intl активовано за замовчуванням, потрібно лише зайти в папку php і скопіювати всі файли, синонімічні icu * .dll, і вставити їх у каталог біт апачі, після чого перезапустити служби).
  5. розширення PHP simplexml
  6. Розширення PDO для PHP
  7. Будь-які бази даних із зазначеного списку повинні бути встановлені у Вашій машині:
  • MySQL (v5.5.3 або новішої)
  • MariaDB (v 5, 5 або більше)
  • PostgreSQL
  • SQLite3
  • Сервер Microsoft SQL (> = версія 2008)

ПаливоPHP

FuelPHP - це програма з відкритим кодом, швидка та сумісна у версіях PHP 5.4+, включені функції перераховані нижче -

  1. Це MVVM тип фреймворку, який не тільки обмежується контролером моделі-перегляду, але й несе підхід моделі-view-ViewModel. Моделі view також називаються моделями презентації.
  2. FuelPHP підтримує роутерний підхід, що дозволяє нам записувати URI безпосередньо.
  3. Підтримує маркери CSRF для запобігання підробці сценаріїв між сайтом.
  4. Фільтрування входів та конструктор запитів допомагає в ін'єкції SQL.
  5. Auth Framework підтримується з метою безпечної автентифікації.
  6. FuelPHP пропонує CLI під назвою "нафта", призначений для прискорення розробки, допомоги в тестуванні та налагодження. Це також допомагає запустити міграцію баз даних.
  7. Деякі базові класи надаються контролерам і моделям, так що розробники можуть мати літній початок, такі функції - Controller_Template (додайте до контролерів просту функцію шаблону сторінок), Controller_Rest (спосіб створення RESTful API), Controller_Hybrid (поєднайте дві функції в єдиний контролер), Model_crud (надає всі методи для операцій CRUD в одній таблиці).
  8. Легкий ORM забезпечує об'єктно-орієнтований спосіб роботи з даними бази даних та виконання CRUD, відносини сподобалися - багато, багато-багато є, каскадно зберігає та видаляє відповідні об’єкти. Спостерігачі є для оновлення екземплярів об'єкта.
  9. Безпека включає в себе систему Auth та інтегрує бібліотеку Opauth та надає різні інші функції, такі як Рольовий контроль доступу (RBAC), безпечна функція хешування паролів, інтеграція OAuth для аутентифікації соціальних медіа.
  10. Існують аналізатори шаблонів для покращення подань з простого PHP, для цього є численні бібліотеки:
    1. Вуса
    2. Гілочка
    3. Haml
    4. Нефрит
    5. Даву
    6. Смарт
    7. Відмітка
  • Крок встановлення -

Дотримуйтесь наведених кроків для того ж -

$ curl https://get.fuelphp.com/oil | ш

Проект можна створити за допомогою

$ нафти створюють

$ composer create-проект паливо / паливо –привітання-dist

Висновок - Рамки PHP

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

Рамка, названа Laravel від Laravel, високо цінується при пошуку розробки мікропослуг, оскільки архітектура мікросервісів відрізняється від монолітних застосувань, механізми ведення журналів, обробка бази даних, Auth-безпека та реалізація викликають головне значення перед кодуванням.

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

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

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

Рекомендовані статті

Це було керівництвом по фреймворкам PHP. Тут ми обговорили список фреймів PHP з їх особливостями та кроки встановлення. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -

  1. Що таке PHP? Що таке використання?
  2. Детальний посібник про те, що таке масив PHP?
  3. Переваги програмування PHP
  4. Вступ до PHP | Повні навчальні посібники
  5. MariaDB проти MySQL | Порівнюючи основні джерела бази даних
  6. Функція хешування в PHP | Як працювати?