Vous êtes-vous déjà demandé comment simplifier des fonctionnalités complexes en PHP de manière élégante et réutilisable ? Nous présentons Orbis, un outil révolutionnaire qui transforme la façon dont nous gérons les instances et les abstractions en PHP.
Orbis est une classe puissante qui agit comme un gestionnaire d'instance global, vous permettant d'abstraire des fonctionnalités complexes en composants simples et réutilisables. Imaginez pouvoir encapsuler toute la logique de routage, de configuration et de gestion d'état dans une seule ligne de code !
Pour comprendre la véritable puissance d'Orbis, regardons un exemple réel du framework Lithe :
function get(string $path, callable|array ...$handler): void { $caller = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 1)[0]; $key = strtolower($caller['file']); $router = Orbis::instance($key); if (!$router instanceof Router) { throw new Exception("Invalid router instance: Router not found"); } $router->get($path, ...$handler); }
Ce code apparemment simple cache une fonctionnalité incroyablement puissante. Orbis permet :
Créons un système de cache intelligent à l'aide d'Orbis :
class SmartCache { private array $storage = []; private array $analytics = []; public function set(string $key, mixed $value, int $ttl = 3600): void { $this->storage[$key] = [ 'value' => $value, 'expires' => time() + $ttl, 'hits' => 0 ]; } public function get(string $key): mixed { if (!isset($this->storage[$key])) { return null; } if (time() > $this->storage[$key]['expires']) { unset($this->storage[$key]); return null; } $this->storage[$key]['hits']++; $this->analytics[$key] = ($this->analytics[$key] ?? 0) + 1; return $this->storage[$key]['value']; } public function getAnalytics(): array { return $this->analytics; } } // Registering different instances for different contexts Orbis::register(new SmartCache(), 'user.cache'); Orbis::register(new SmartCache(), 'product.cache'); // Anywhere in your application function cacheUser(User $user): void { $cache = Orbis::instance('user.cache'); $cache->set("user.{$user->id}", $user); } function getUser(int $id): ?User { $cache = Orbis::instance('user.cache'); return $cache->get("user.{$id}"); }
Installation via Composer :
composer require lithemod/orbis
// Register an instance Orbis::register(MyClass::class); // Use it anywhere $instance = Orbis::instance(MyClass::class);
Orbis n’est pas simplement une autre bibliothèque de gestion des dépendances – c’est une nouvelle façon de penser l’abstraction et la réutilisation du code en PHP. Avec lui, vous pouvez :
Essayez Orbis aujourd'hui et découvrez comment il peut transformer votre code PHP en quelque chose de vraiment magique ! ✨
Pour mieux comprendre le fonctionnement d'Orbis, lisez l'article Comment utiliser Orbis pour simplifier votre code PHP et découvrez son potentiel en pratique !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!