Повнофункціональний PHP-фреймворк, що поставляється як C-розширення

Інноваційна архітектура робить Phalcon найшвидший PHP-фреймворком! Переконайтесь самі...

За підтримки

Основні функції

  • Низьке споживання

    Низьке споживання

    Низьке споживання пам'яті та процесорного часу в порівнянні з традиційними фреймворками

  • MVC і HMVC

    MVC і HMVC

    Модулі, компоненти, моделі, представлення та контроллери

  • Впровадження залежностей

    Впровадження залежностей

    Впровадження залежностей, локатор сервісів і контейнер для них.

  • Rest

    Rest

    У вашому розпорядженні мікро та повнорозмірна програма для вирішення вашого задачі. На додачу ще й потужний набір засобів для роботи із HTTP.

  • Автозавантажувач

    Автозавантажувач

    Забезпечує механізм автозавантаження класів PHP, згідно PSR-4.

  • Маршрутизатор

    Маршрутизатор

    Phalcon\Mvc\Router надає розширені можливості маршрутизації.

Низьке споживання

PHP C-extension (Phalcon)

  • Розширення Zephir/C завантажуються разом з PHP один раз, при запуску демона веб-сервера
  • Класи та функції, які надає розширення, готові до використання в будь-якій програмі
  • Код скомпільований та не інтерпретується, оскільки він уже скомпільований для певної платформи та процесора
  • Завдяки його низькорівневій архітектурі та оптимізаціям Phalcon забезпечує найнижчі навантаження для MVC-подібних програм

Data & storage

  • ORM

    ORM

    Об'єктно-реляційне відображення

  • PHQL

    PHQL

    Потужна та безпечна Phalcon Query Language (мова запитів фалкон), PHQL

  • ODM для MongoDB

    ODM для MongoDB

    Об'єктно-реляційне відображення для MongoDB

  • Транзакції

    Транзакції

    Транзакції в Phalcon дозволяють зберігати цілісність даних.

  • Кеш

    Кеш

    Поліпште продуктивність за допомогою багатьох бек-енд кеш провайдерів

ORM

Phalcon поставляється із потужною ORM, яка дозволяє кенрувати записами бази даних через класи та об'єкти. MySQL, PostgreSQL та SQLite підтримуються з коробки.

                    
use Phalcon\Mvc\Model;

class Robots extends Model
{
    public $id;

    public $name;

    public function initialize()
    {
        $this->hasMany('id', 'RobotsParts', 'robots_id');
    }
}
                    
                

Представлення та фронтенд

  • Шаблонізатори

    Шаблонізатори

    Представлення - це користувацький інтерфейс вашої програми

  • Шаблонізатор (Volt)

    Шаблонізатор (Volt)

    Шаблонізатор, Jinja для PHP написаний на C

  • i18n

    i18n

    Без проблем перекладайте свої програми багатьма мовами

  • Конструктор форм

    Конструктор форм

    З легкістю створюйте HTML-форми

  • Інфоповідомлення

    Інфоповідомлення

    Інфоповідомлення використовуються, щоб сповістити користувача про стан дій.

Шаблонізатори

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

                    
<html>
    <body>
    <div class='top'><?php $this->partial('shared/ad_banner'); ?></div>
    <div class='content'>
        <h1>Robots</h1>
        <p>Check out our specials for robots:</p>
        ...
    </div>
    <div class='footer'><?php $this->partial('shared/footer'); ?></div>
    </body>
</html>                    
                

БІЛЬШЕ...

  • ACL

    ACL

    Список контролю доступу надає користувачам доступ до авторизованих модулів

  • Шардування

    Шардування

    Підключайте, зберігайте та отримуйте дані з багатьох баз даних одночасно

  • Шифрування

    Шифрування

    Користуйтеся шифруванням, аби вберегти дані від несанкціонованого доступу третіх осіб

  • Події

    Події

    Розширюйте більшість основних компонентів, встановивши "умови спрацювань". Створіть свої власні події та зробіть свою програму більш гнучкою та потужною

  • Черги - фонові завдання

    Черги - фонові завдання

    Використовуйте вбудовану в Phalcon систему черг, щоб запланувати завдання та зменшити навантаження на ваш веб-сервер

ACL

Так ви можете створити список контролю доступу (ACL):

                    
use Phalcon\Acl;
use Phalcon\Acl\Role;
use Phalcon\Acl\Adapter\Memory as AclList;

// Створення ACL
$acl = new AclList();

// Дія за замовчуванням - ЗАБОРОНА доступу
$acl->setDefaultAction(Acl::DENY);

// Реєструємо дві ролі; Зареєстрованих користувачів
// та гостей, які є користувачами без визначеного ідентифікатора
$roles = array(
    'users'  => new Role('Users'),
    'guests' => new Role('Guests')
);

foreach ($roles as $role) {
    $acl->addRole($role);
}
                    
                

Створення опитування з нуля за 15хв

Перегляньте відео демонстрацію

Приєднуйтесь до нашої яскравої спільноти розробників!

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