amenessisse/package-heo-api
最新稳定版本:v1.3.0
Composer 安装命令:
composer require amenessisse/package-heo-api
包简介
Package bridge Heo API
README 文档
README
Introduction
Le package amenessisse/package-heo-api est un client PHP pour l'API Heo, permettant d'accéder facilement aux ressources de catalogue, collections et produits via une interface simple et intuitive.
Installation
Installez le package via Composer :
composer require amenessisse/package-heo-api
Configuration requise
- PHP 7.0 ou supérieur
- Symfony HTTP Client 5.0 ou supérieur
Utilisation de base
Initialisation du client
<?php use Amenessisse\PackageHeoAPI\HeoApiClient; // Initialisation avec vos identifiants $client = new HeoApiClient('votre_nom_utilisateur', 'votre_mot_de_passe');
Accès aux collections
// Récupérer toutes les collections $collections = $client->getCollectionsAll()->toArray(); // Récupérer les types de collections $types = $client->getCollectionsTypes()->toArray(); // Autres méthodes disponibles $themes = $client->getCollectionsThemes()->toArray(); $specials = $client->getCollectionsSpecials()->toArray(); $manufacturers = $client->getCollectionsManufacturers()->toArray(); $categories = $client->getCollectionsCategories()->toArray();
Accès au catalogue
// Récupérer le catalogue complet $catalog = $client->getCatalog()->toArray();
Accès aux produits
Avec des requêtes simples
// Récupérer les produits (page 1, 50 éléments par page) $products = $client->getProducts(null, 1, 50)->toArray(); // Requête avec une chaîne de filtre simple $productsFiltered = $client->getProducts("ageRating==1", 1, 50)->toArray();
Avec le constructeur de requêtes
<?php use Amenessisse\PackageHeoAPI\QueryBuilder\ProductQueryBuilder; // Création d'une requête complexe $queryBuilder = (new ProductQueryBuilder()) ->where('ageRating', '==', 1) ->orWhere('ageRating', '==', 7); // Utilisation dans la requête de produits $products = $client->getProducts($queryBuilder, 1, 50)->toArray();
Accès aux prix et disponibilités
// Récupérer les prix des produits $prices = $client->getPrices($queryBuilder, 1, 50)->toArray(); // Récupérer les disponibilités des produits $availabilities = $client->getAvailabilities($queryBuilder, 1, 50)->toArray();
Constructeur de requêtes (ProductQueryBuilder)
Le constructeur de requêtes permet de créer des filtres complexes pour vos requêtes API.
Opérateurs disponibles
==: égalité!=: différence=lt=: inférieur à=le=: inférieur ou égal à=gt=: supérieur à=ge=: supérieur ou égal à=in=: appartient à
Méthodes
where()
Ajoute une condition de filtre.
$queryBuilder->where('field', 'operator', 'value');
orWhere()
Ajoute une condition alternative (OR).
$queryBuilder->where('field1', '==', 'value1') ->orWhere('field2', '==', 'value2'); // Génère: field1==value1 or field2==value2
build()
Génère la chaîne de requête finale.
$queryString = $queryBuilder->build();
Gestion des erreurs
Toutes les méthodes de l'API peuvent lancer des exceptions en cas d'erreur :
<?php use Symfony\Contracts\HttpClient\Exception\TransportExceptionInterface; try { $response = $client->getProducts("ageRating==1", 1, 50); $data = $response->toArray(); } catch (Exception $e) { // Gestion des erreurs générales echo "Erreur : " . $e->getMessage(); } catch (TransportExceptionInterface $e) { // Gestion des erreurs de transport HTTP echo "Erreur de communication avec l'API : " . $e->getMessage(); }
Constants et endpoints disponibles
Le client expose plusieurs constantes définissant les endpoints de l'API :
HEO_BASE_URI: URI de base de l'APIHEO_CATALOG: Endpoint du catalogueHEO_COLLECTIONS: Endpoint des collectionsHEO_PRODUCTS: Endpoint des produitsHEO_PRICES: Endpoint des prixHEO_AVAILABILITIES: Endpoint des disponibilités
Mode Sandbox
Le client HeoApiClient offre la possibilité de basculer entre l'environnement de production et l'environnement de test (sandbox) :
// Lors de l'initialisation (true = sandbox, false = production) $client = new HeoApiClient('votre_nom_utilisateur', 'votre_mot_de_passe', true); // Ou via la méthode dédiée $client->setSandboxMode(true); // Utiliser l'environnement de test $client->setSandboxMode(false); // Basculer vers l'environnement de production ## Licence Ce package est distribué sous licence MIT.
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-08-26