PHPackages                             heyehang/fast-hyperf - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. heyehang/fast-hyperf

ActiveLibrary[Framework](/categories/framework)

heyehang/fast-hyperf
====================

LinkCloud Fast Hyperf

00PHP

Since Nov 15Pushed 2y agoCompare

[ Source](https://github.com/cxjhk/fast-hyperf)[ Packagist](https://packagist.org/packages/heyehang/fast-hyperf)[ RSS](/packages/heyehang-fast-hyperf/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Fast Hyperf
===========

[](#fast-hyperf)

基于Hyperf框架二次封装的快速开发脚手架

```
说明：
本项目封装沿用了Java风格的对象风格，不喜者，请绕路

```

安装方式
----

[](#安装方式)

普通安装

```
composer require link-cloud/fast-hyperf

```

模板安装

```
composer create-project link-cloud/fast-hyperf-demo demo

```

模板创建

常用命令
----

[](#常用命令)

### 快速生成业务代码

[](#快速生成业务代码)

```
php bin/hyperf.php gen:code -p /app -P default -a /api/v1

```

参数名说明示例-p代码路径-p /app-P数据库连接池名称-P default-a接口路径前缀-a /api/v1-t模块名称，如果需要分模块，设置此参数 (比如小程序接口和管理后台接口)-t api -t admin`此命令依赖`config/autoload/generate.php`配置文件，可参考demo项目`

生成的代码结构说明：

目录名称说明Application/Controller接口控制器目录Constants静态枚举类目录，建议再创建Status,Enums,Types三个子目录Constants/Errors错误码目录Config生成器配置目录，可在此目录配置需要生成的实体类以及接口类Entity接口实体类目录Logic逻辑层目录，业务代码在此编写 ，可对外暴露提供RPC接口，实现微服务调用Model数据库实体类目录Repository/Dao/ContractsDAO接口定义Repository/Dao/MySQLDAO的MySQL访问实现Service服务层目录，基础的单表服务，可对外暴露提供RPC接口，实现微服务调用，也可以在此层定义缓存访问等### 多语言翻译文件生成

[](#多语言翻译文件生成)

可以将错误码和枚举类的翻译文件自动生成

```
php bin/hyperf.php translate:gen

```

`此命令依赖`config/autoload/generate.php`配置文件，可参考demo项目`

常用组件
----

[](#常用组件)

### 枚举类

[](#枚举类)

基于 `marc-mabe/php-enum` 封装的枚举类对象，方便枚举类传递和定义，再也不用到处问代码里的1234是什么意思了 枚举类定义

```
use LinkCloud\Fast\Hyperf\Annotations\EnumMessage;
use LinkCloud\Fast\Hyperf\Framework\Entity\ErrorCode;

/**
 * @method static BaseStatus NORMAL()
 * @method static BaseStatus FROZEN()
 */
class BaseStatus extends BaseEnum
{
    #[EnumMessage(message: '正常')]
    public const NORMAL = 1;

    #[EnumMessage(message: '冻结')]
    public const FROZEN = 2;
}
```

使用：

```
$status = BaseStatus::NORMAL();
var_dump($status->getValue()); // 获取数字值
var_dump($status->getMessage()); // 获取关联信息

// 函数定义时可指定类型
function judge(BaseStatus $status)
{

}

judge(BaseStatus::NORMAL()); // 函数传参

// 类的成员变量定义
class Object
{
    protected BaseStatus $status;
}
```

### 基本对象

[](#基本对象)

框架定义了`BaseObject`对象，用于方便在数组和对象之间互相转换

定义一个对象

```
use LinkCloud\Fast\Hyperf\Common\BaseObject;
use LinkCloud\Fast\Hyperf\Annotations\ArrayType;

class User extends BaseObject
{
    public string $userId;

    public string $userName;

    public UserStatus $status;

    #[ArrayType(valueType: UserBalance::class)]
    public array $balances;
}

class UserBalance extends BaseObject
{
    public string $amount;
}

// 从数组转换过来
$user = new User([
    'user_id' => 1,
    'user_name' => 'account',
    'status' => 1,
    'balances' => [
        ['amount' => '100'],
        ['amount' => '200'],
    ],
]);

var_dump($user->userId);
var_dump($user->balances);

// 转回数组
var_dump($user->toArray());
```

`ArrayType` 是一个新的注解，当需要声明一个指定类型的数组时，可以使用此注解定义

```
    #[ArrayType(valueType: UserBalance::class)]
    public array $balances;
```

### Swagger接口文档

[](#swagger接口文档)

服务启动后，可直接访问 `http://127.0.0.1:9501/swagger` 查看swagger文档页面。 可通过配置文件关闭此功能

###  Health Score

12

—

LowBetter than 0% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity0

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity20

Early-stage or recently created project

 Bus Factor1

Top contributor holds 50% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/e79c9e303f37bae6518f81d692cab37da4685886acbc4ca884066bee81b14838?d=identicon)[cxjhk](/maintainers/cxjhk)

---

Top Contributors

[![cxjhk](https://avatars.githubusercontent.com/u/23472375?v=4)](https://github.com/cxjhk "cxjhk (1 commits)")[![Dannieeth](https://avatars.githubusercontent.com/u/142962463?v=4)](https://github.com/Dannieeth "Dannieeth (1 commits)")

### Embed Badge

![Health badge](/badges/heyehang-fast-hyperf/health.svg)

```
[![Health](https://phpackages.com/badges/heyehang-fast-hyperf/health.svg)](https://phpackages.com/packages/heyehang-fast-hyperf)
```

###  Alternatives

[laravel/telescope

An elegant debug assistant for the Laravel framework.

5.2k67.8M192](/packages/laravel-telescope)[spiral/roadrunner

RoadRunner: High-performance PHP application server and process manager written in Go and powered with plugins

8.4k12.2M84](/packages/spiral-roadrunner)[nolimits4web/swiper

Most modern mobile touch slider and framework with hardware accelerated transitions

41.8k177.2k1](/packages/nolimits4web-swiper)[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k36.7M259](/packages/laravel-dusk)[laravel/prompts

Add beautiful and user-friendly forms to your command-line applications.

708181.8M596](/packages/laravel-prompts)[cakephp/chronos

A simple API extension for DateTime.

1.4k47.7M121](/packages/cakephp-chronos)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
