myohanhtet/service-layer
Composer 安装命令:
composer require myohanhtet/service-layer
包简介
A Laravel package to generate service layer files
README 文档
README
A SOLID-compliant service layer generator for Laravel applications that enforces best practices through interface-implementation separation.
✨ Features
- Automatic interface and implementation generation
- Auto-binding in Service Provider
- Proper namespace organization (
ServicesandServices/Impl) - Stub customization support
- SOLID architecture enforcement
- Laravel container integration
📦 Installation
Install via Composer:
composer require myohanhtet/service-layer
🚀 Usage
Basic Service Generation
php artisan make:service UserService
This creates:
app/
└── Services/
├── UserService.php # Interface
└── Impl/
└── UserServiceImpl.php # Implementation
🏗️ Generated Files
- Interface:
app/Services/UserService.php
<?php namespace App\Services; interface UserService { // Define your service contract here public function getAllUsers(); }
- Implementation:
app/Services/Impl/UserServiceImpl.php
<?php namespace App\Services\Impl; use App\Services\UserService; class UserServiceImpl implements UserService { public function getAllUsers() { // Your implementation here return User::all(); } }
- Auto-generated Binding in:
AppServiceProvider:
$this->app->bind( \App\Services\UserService::class, \App\Services\Impl\UserServiceImpl::class );
🔧 Advanced Usage
Customizing Stubs
Publish the stubs to customize:
php artisan vendor:publish --provider="Myohanhtet\ServiceLayer\ServiceLayerServiceProvider" --tag=stubs
Then modify:
stubs/service.stubstubs/service-impl.stub
Manual Binding:
if auto-binding fails, you can manually bind the service in your AppServiceProvider:
$this->app->bind( \App\Services\UserService::class, \App\Services\Impl\UserServiceImpl::class );
🛠️ Requirements
- PHP 8.0 or higher
- Laravel 11 or higher
🤝 Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss.
- Fork the repository
- Create your feature branch (
git checkout -b feature/YourFeature) - Commit your changes (
git commit -m 'Add some feature') - Push to the branch (
git push origin feature/YourFeature) - Open a pull request
📄 License
This project is licensed under the MIT License. See the LICENSE file for details.
Made with ❤️ by Myo Han Htet
myohanhtet/service-layer 适用场景与选型建议
myohanhtet/service-layer 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 452 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 05 月 01 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 myohanhtet/service-layer 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 myohanhtet/service-layer 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 452
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 6
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-05-01