tourze/wechat-mini-program-appid-contracts
最新稳定版本:1.0.0
Composer 安装命令:
composer require tourze/wechat-mini-program-appid-contracts
包简介
微信小程序AppID定义接口
README 文档
README
This package provides interface definitions for WeChat Mini Program AppID management, offering a standardized way to handle Mini Program credentials and loaders.
Features
- Standard interface for Mini Program credentials management
- Support for multiple Mini Program instances
- Type-safe interface definitions
- Framework-agnostic design
Installation
Install the package via Composer:
composer require tourze/wechat-mini-program-appid-contracts
Quick Start
Basic Usage
Implement the MiniProgramInterface to define a Mini Program:
use Tourze\WechatMiniProgramAppIDContracts\MiniProgramInterface; class MyMiniProgram implements MiniProgramInterface { public function __construct( private string $appId, private string $appSecret ) {} public function getAppId(): string { return $this->appId; } public function getAppSecret(): string { return $this->appSecret; } }
Implementing a Loader
Create a loader to manage multiple Mini Programs:
use Tourze\WechatMiniProgramAppIDContracts\MiniProgramLoaderInterface; use Tourze\WechatMiniProgramAppIDContracts\MiniProgramInterface; class MiniProgramLoader implements MiniProgramLoaderInterface { /** * @var MiniProgramInterface[] */ private array $programs = []; public function addProgram(MiniProgramInterface $program): void { $this->programs[] = $program; } /** * @return iterable<MiniProgramInterface> */ public function findValidList(): iterable { return $this->programs; } }
Usage Example
// Create Mini Program instances $program1 = new MyMiniProgram('app_id_1', 'app_secret_1'); $program2 = new MyMiniProgram('app_id_2', 'app_secret_2'); // Create and configure loader $loader = new MiniProgramLoader(); $loader->addProgram($program1); $loader->addProgram($program2); // Get all valid Mini Programs foreach ($loader->findValidList() as $program) { echo "AppID: " . $program->getAppId() . PHP_EOL; }
API Reference
MiniProgramInterface
The main interface for Mini Program credentials:
getAppId(): string- Returns the Mini Program's AppIDgetAppSecret(): string- Returns the Mini Program's App Secret
MiniProgramLoaderInterface
Interface for loading and managing multiple Mini Programs:
findValidList(): iterable- Returns an iterable collection of valid Mini Program instances
Best Practices
- Security: Never hardcode credentials in your code. Use environment variables or secure configuration management.
- Validation: Implement validation in your concrete classes to ensure AppID and AppSecret are valid.
- Caching: Consider caching the Mini Program list in your loader implementation for better performance.
License
This package is open-source software licensed under the MIT license.
统计信息
- 总下载量: 2.17k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 12
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-05-10