PHPackages                             poplary/lumen-hprose - 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. [API Development](/categories/api)
4. /
5. poplary/lumen-hprose

ActiveLibrary[API Development](/categories/api)

poplary/lumen-hprose
====================

Hprose for Lumen

0.1.6(5y ago)21.1kMITPHPPHP &gt;=7.2.5

Since Aug 13Pushed 5y ago1 watchersCompare

[ Source](https://github.com/poplary/lumen-hprose)[ Packagist](https://packagist.org/packages/poplary/lumen-hprose)[ RSS](/packages/poplary-lumen-hprose/feed)WikiDiscussions master Synced yesterday

READMEChangelog (4)Dependencies (4)Versions (8)Used By (0)

Lumen-hprose
============

[](#lumen-hprose)

安装
--

[](#安装)

直接使用

```
composer require poplary/lumen-hprose
```

使用**lumen**配置
-------------

[](#使用lumen配置)

1. 在 bootstrap/app.php 注册 ServiceProvider

    ```
    $app->register(\Poplary\LumenHprose\ServiceProvider::class);
    ```
2. 配置.env文件

    ```
    // 服务的名称
    HPROSE_SERVICE=product

    // 是否开启 debug
    HPROSE_DEBUG=true

    // Hprose 服务启用方式，可选 socket 和 swoole，选择 swoole 时需要安装 swoole 扩展
    HPROSE_SERVER=socket

    // 监听的 TCP 端口
    HPROSE_URI=tcp://0.0.0.0:8889

    ```
3. 创建`配置`和`路由`文件：

    ```
    cp ./vendor/poplary/lumen-hprose/config/hprose.php ./config/hprose.php
    cp ./vendor/poplary/lumen-hprose/routes/hprose.php ./routes/hprose.php
    ```

使用
--

[](#使用)

### 路由

[](#路由)

路由文件

```
routes/hprose.php

```

添加路由方法

```
use Poplary\LumenHprose\Facades\Router;

Router::add(string $name, string|callable $action, array $options = []);
```

- string $name 可供客户端远程调用的方法名
- string|callable $action 类方法，格式：App\\Controllers\\User@update
- array $options 是一个关联数组，它里面包含了一些对该服务函数的特殊设置，详情请参考hprose-php官方文档介绍 [链接](https://github.com/hprose/hprose-php/wiki/06-Hprose-%E6%9C%8D%E5%8A%A1%E5%99%A8#addfunction-%E6%96%B9%E6%B3%95)

发布远程调用方法 `getUserByName` 和 `update`

```
Router::add('getServiceName', 'Poplary\LumenHprose\Controllers\DemoController@getServiceName');
```

控制器

```
