Simple library for PHP apps

dev-main 2024-07-23 16:30 UTC

This package is auto-updated.

Last update: 2025-08-23 18:58:28 UTC


README

Описание

Простая библиотека, реализующая минимально необходимый функционал для комфортного создания простых PHP-приложений.

Цели, которые ставились при создании библиотеки:

  • типовые задачи (работа с запросами, базой данных, файловой системой) должны реализовываться библиотекой
  • библиотека не должна ни к чему обязывать, а просто быть под рукой: можно использовать один класс (метод) или полностью построить на ней приложение - решает разработчик
  • при использовании библиотеки взаимодействие с ней должно быть максимально объектно-ориентированным
  • библиотека должна представлять собой связанную систему классов, к любому из которых можно получить доступ начиная от самого верхнего уровня Tet
  • структура библиотеки должна заменить документацию

При создании библиотеки я вдохновлялся:

  • frontend-библиотекой jQuery, где через $ в любом месте доступен широкий функционал
  • объектными моделями компонентов из экосистемы операционной системы Windows

Структура

Структура библиотеки представляет собой развитую и интегрированную систему фасадов, ведущих к классам реализующим конкретный функционал. Большая часть библиотеки реализована посредством статичных методов

В Tet входят следующие блоки:

  • HTTP
    • Client
    • Server
    • Response
  • Routing
    • Router
    • Route
  • Database
    • MySQL
  • Filesystem
    • Path
    • Directory
    • File
  • Mailer
  • Security
    • Auth
  • Common
    • Utils

Установка

    composer require branzoni/tet

Использование

    use Tet\Tet;
    
    $router = Tet::router();
    $router::setRoot("/");
    $router::get("/", function () {
        return "Hello, world!";
    });

    $router::get("/foo/bar", function () {
        return Foo::bar();
    });
    
    $router::run();