tourze / user-service-contracts
为 Symfony 应用程序提供用户服务契约和接口的 PHP 包
Installs: 1 387
Dependents: 9
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/tourze/user-service-contracts
Requires
- symfony/dependency-injection: ^7.3
- symfony/doctrine-bridge: ^7.3
- symfony/security-core: ^7.3
Requires (Dev)
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^11.5
This package is auto-updated.
Last update: 2025-10-31 07:53:21 UTC
README
A comprehensive PHP package providing user service contracts and interfaces for Symfony applications.
Installation
You can install this package via Composer:
composer require tourze/user-service-contracts
Quick Start
This package provides essential contracts for user management services in Symfony applications.
User Counter Interface
<?php use Tourze\UserServiceContracts\UserCounterInterface; class UserCounter implements UserCounterInterface { public function countAll(): int { // Implementation for counting all valid users return 1000; } }
User Manager Interface
<?php use Tourze\UserServiceContracts\UserManagerInterface; use Symfony\Component\Security\Core\User\UserInterface; class UserManager implements UserManagerInterface { public function createUser(string $userIdentifier, ?string $nickName = null, ?string $avatarUrl = null): UserInterface { // Implementation for creating a new user return new User($userIdentifier, $nickName, $avatarUrl); } public function loadUserByIdentifier(string $identifier): UserInterface { // Implementation for loading user by identifier return $this->findUserByIdentifier($identifier); } }
Constants
<?php use Tourze\UserServiceContracts\UserServiceConstants; // Access predefined constants $fixturesName = UserServiceConstants::USER_FIXTURES_NAME; // 'users' $userPrefix = UserServiceConstants::NORMAL_USER_REFERENCE_PREFIX; // 'normal-user-'
Features
- UserCounterInterface: Provides methods for counting users
- UserManagerInterface: Extends Symfony's UserLoaderInterface for user management
- UserServiceConstants: Defines commonly used constants for user services
- Full Symfony Integration: Seamlessly integrates with Symfony Security component
Requirements
- PHP 8.1 or higher
- Symfony 7.3 or higher
License
This package is open-source software licensed under the MIT license.