Очень легкий минималистичный PHP-фреймворк (совместимый с 5.2.14), полезный для реализации RESTful API.

Вот требования:

  • Должен быть совместим с PHP 5.2.14.
  • Свободное сцепление для максимальной производительности

    Для сравнения: Code Igniter требуется 1500 мс для приложения «hello world» в целевой системе. (измерено в браузере по локальной сети 100 Мбит)

  • Полезно для реализации RESTful API

  • Функции:

    • Объектно-ориентированный подход
    • MVC было бы неплохо, но я непредубежден
    • URL-маршрутизация
    • Классы для общих вещей, таких как проверка, аутентификация, создание ответов
Какие особенности он должен иметь?
Вы рассматривали PHP? Я видел этот доклад youtube.com/watch?v=ryld1J1ngCE . По сути, PHP — это веб-фреймворк.
Да, я думал о чистом PHP, но я не хочу заново изобретать велосипед, поскольку есть много общих вещей, таких как маршрутизация URL-адресов, проверка, аутентификация и т. д. Я мог бы использовать некоторые классы, которые я могу найти в Интернете, но я хотел бы иметь преимущества фреймворка. Я добавлю необходимые функции в свой пост.
Вы действительно имеете в виду PHP 5.2? Это был EOL в течение более 3 лет.
Это проект для небольшой системы на базе ARM и нет ни людей, ни времени портировать другую версию PHP...

Ответы (3)

Laravel предлагает услугу автоматической публикации некоторых контроллеров RestFul. Затем вам просто нужно назначить маршрут к этому ресурсу, и ваш компонент Rest работает.

О других ваших функциях Laravel:

  • Является объектно-ориентированным.
  • Предлагает инструмент проверки с уже реализованными большинством общепринятых правил проверки. Конечно, вы можете добавить свои собственные правила.
  • Предоставляет функции маршрутизации с фильтрами для обеспечения безопасности (аутентификация, CRSF, ...).
  • Предлагает возможность работать с философией MVC или нет, или частично.
  • Основан на 5.4 PHP.

Я никогда не измеряю HelloWorldответ, поэтому не знаю, настолько ли легок этот фреймворк, как вы ожидаете.

Другие особенности:

  • Отличная документация и поддержка
  • Активный проект, регулярно обновляемый
  • Открытые исходники и бесплатно
  • Установка и зависимости Laravel через Composer
Проблема в том, что я привязан к PHP 5.2.14. Я собираюсь написать собственный микрофреймворк для своих нужд. В любом случае, спасибо за ваш ответ
Laravel требует PHP 5.4+
Laravel тяжелый; насколько мне это нравится, я голосую за этот ответ, поскольку Laravel так же (если не больше) прожорлив к ресурсам, как CodeIgniter.

Обратите внимание на Phalcon , это фреймворк, поставляемый как расширение C, поэтому он очень быстрый (практически без накладных расходов по сравнению с чистым приложением без фреймворка на любой приличной машине).

Он слабо связан, поскольку каждый модуль является отдельным и не зависит от других, поэтому, хотя в кратком руководстве они настраивают инжектор зависимостей с «заводскими настройками по умолчанию», который предварительно загружает наиболее вероятно используемые функции, вы также можете начать с чистого холста. и загружайте только то, что хотите; ознакомьтесь с их документацией для получения дополнительной информации.

Я не уверен, что у них есть сборки для этой конкретной версии PHP и еще меньше для платформ ARM, но код с открытым исходным кодом, поэтому вы всегда можете скомпилировать его самостоятельно.

Выберите тонкий фреймворк . Он быстрый и легкий, хотя и обеспечивает: HTTP-маршрутизацию с параметрами, перенаправления, промежуточное ПО; шаблонизация с поддержкой Twig, Mustache, Smarty; флэш-сообщения; зашифрованные файлы cookie; HTTP-кэширование; протоколирование; обработка ошибок и отладка. Версия 1.* работает на PHP 5.2+. Версия 2.* требует PHP 5.3+.

Это привет мир:

<?php
require 'Slim/Slim.php';
$app = new Slim();
$app->get('/hello/:name', 'hello');
function hello($name) {
    echo "Hello, $name!";
}
$app->run();