承接 mapathe/core 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

mapathe/core

最新稳定版本:v1.0.0

Composer 安装命令:

composer require mapathe/core

包简介

Dépendance Core contenant le cœur de l'application PHP (routes, base, services, etc.)

README 文档

README

Vue d'ensemble

Mapathe Core est une bibliothèque PHP moderne qui fournit les composants fondamentaux pour développer des applications web avec injection de dépendances, routage et gestion de sessions.

Installation

composer require mapathe/core

Architecture

Container d'Injection de Dépendances

Le Container gère automatiquement les dépendances avec support des singletons.

$container = Container::getInstance();

// Lier une classe
$container->bind(Interface::class, Implementation::class);

// Singleton
$container->singleton(Service::class);

// Résoudre
$service = $container->resolve(Service::class);

Application Principale

La classe App centralise l'accès aux services.

// Initialiser l'application
App::initialize();

// Récupérer un service
$controller = App::get('CitoyenController');
$service = App::get(\App\Service\CitoyenService::class);

Routage

Le Router gère les routes avec support des paramètres et middlewares.

// Dans routes/route.web.php
return [
    [
        'method' => 'GET',
        'path' => '/users/{id}',
        'controller' => 'CitoyenController',
        'action' => 'show',
        'middlewares' => ['auth']
    ],
    [
        'method' => 'POST',
        'path' => '/login',
        'action' => function() {
            echo "Connexion";
        }
    ]
];

// Résoudre la route courante
Router::resolve();

Configuration des Services

Les services sont configurés via config/services.yml :

services:
  repositories:
    CitoyenRepository:
      class: \App\Repository\CitoyenRepository
      singleton: true
      
  services:
    CitoyenService:
      class: \App\Service\CitoyenService
      singleton: true
      dependencies: ['CitoyenRepository']
      
  controllers:
    CitoyenController:
      class: \App\Controller\CitoyenController
      dependencies: ['CitoyenService']

Classes Abstraites

AbstractController

Base pour tous les contrôleurs avec méthodes CRUD et réponses JSON.

class CitoyenController extends AbstractController
{
    public function index() {
        $data = ['users' => []];
        $this->renderJson($data, "success", 200, "Liste récupérée");
    }
}

AbstractEntity

Base pour les entités avec sérialisation.

class User extends AbstractEntity
{
    public static function toObject(array $data): static {
        // Conversion array vers objet
    }
    
    public function toArray(): array {
        // Conversion objet vers array
    }
}

AbstractRepository

Base pour les repositories avec connexion PDO.

class UserRepository extends AbstractRepository
{
    public function findAll() {
        $stmt = $this->pdo->query("SELECT * FROM users");
        return $stmt->fetchAll();
    }
}

Gestion des Sessions

$session = Session::getInstance();

$session->set('user', $userData);
$user = Session::get('user');
Session::requireAuth(); // Middleware auth

Base de Données

Configuration automatique via variables d'environnement :

DB_DRIVER=pgsql
DB_HOST=localhost
DB_PORT=5433
DB_NAME=pgdbDaf
DB_USER=pguserDaf
DB_PASSWORD=pgpassword

Middlewares Intégrés

  • auth : Vérifie l'authentification utilisateur
  • guest : Redirige les utilisateurs connectés

Exemple Complet

// Structure du projet
/src
  /core           # Classes du framework
  /config
    services.yml  # Configuration des services
/routes
  route.web.php   # Définition des routes

// Bootstrap
require 'vendor/autoload.php';
App::initialize();
Router::resolve();

Fonctionnalités Clés

Injection de dépendances automatique
Routage avec paramètres dynamiques
Middlewares d'authentification
Sessions sécurisées
ORM simple avec PDO
Configuration YAML
Réponses JSON standardisées

Cette bibliothèque offre une base solide pour développer rapidement des applications PHP modernes avec une architecture propre et maintenable.

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2025-07-25