旗下导航:搜·么
当前位置:网站首页 > PHP框架 > Laravel > 正文

基于 hprose/hprose-php开辟的Laravel扩大:laravel-hprosed的引见【laravel框架】

作者:搜搜PHP网发布时间:2019-11-27分类:Laravel浏览:80


导读:本篇文章给人人带来的内容是关于基于hprose/hprose-php开辟的Laravel扩大:laravel-hprosed的引见,有肯定的参考价值,有须要的朋侪能够参考一下,愿...
本篇文章给人人带来的内容是关于基于 hprose/hprose-php开辟的Laravel扩大:laravel-hprosed的引见,有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。

基于 hprose/hprose-php 开辟的Laravel扩大:laravel-hprose

版本请求

Laravel>=5.3

装置

composer require "zhuqipeng/laravel-hprose:v1.0-alpha"

或许编辑composer.json

"require": {
    "zhuqipeng/laravel-hprose": "v1.0-alpha"
}

设置

  1. 在 config/app.php 注册 ServiceProvider 和 Facade (Laravel 5.5 无需手动注册)

'providers' => [
    // ...

    Zhuqipeng\LaravelHprose\ServiceProvider::class,
]
'aliases' => [
    // ...

    'LaravelHproseMethodManage' => Zhuqipeng\LaravelHprose\Facades\HproseMethodManage::class,
]
  1. 设置.env文件

监听地点列表,字符串json花样数组

HPROSE_URIS=["tcp://0.0.0.0:1314"]

是不是启用demo要领,true开启 false封闭,开启后将自动对外宣布一个长途挪用要领 demo

客户端可挪用:$client->demo()

HPROSE_DEMO=true // true or false
  1. 建立设置路由文件:

php artisan vendor:publish --provider="Zhuqipeng\LaravelHprose\ServiceProvider"

运用根目录下的config目录下会自动生成新文件hprose.php

运用根目录下的routes目录下会自动生成新文件rpc.php

运用

路由

laravel 路由的用法类似,基于 dingo/api 的路由代码上做了简朴修正

路由文件

routes/rpc.php

增加路由要领

\LaravelHproseRouter::add(string $name, string|callable $action, array $options = []);
  • string $name 可供客户端长途挪用的要领名

  • string|callable $action 类要领,花样:AppControllersUser@update

  • array $options 是一个关联数组,它内里包含了一些对该效劳函数的特别设置,详情请参考hprose-php官方文档引见 链接

宣布长途挪用要领 getUserByNameupdate

\LaravelHproseRouter::add('getUserByName', function ($name) {
    return 'name: ' . $name;
});

\LaravelHproseRouter::add('userUpdate', 'App\Controllers\User@update', ['model' => \Hprose\ResultMode::Normal]);

控制器

<?php

namespace App\Controllers;

class User
{
    public function update($name)
    {
        return 'update name: ' . $name;
    }
}

客户端挪用

$client->getUserByName('zhuqipeng');
$client->userUpdate('zhuqipeng');

路由组

\LaravelHproseRouter::group(array $attributes, callable $callback);
  • array $attributes 属性 ['namespace' => '', 'prefix' => '']

  • callable $callback 回调函数

\LaravelHproseRouter::group(['namespace' => 'App\Controllers'], function ($route) {
    $route->add('getUserByName', function ($name) {
        return 'name: ' . $name;
    });

    $route->add('userUpdate', 'User@update');
});

客户端挪用

$client->getUserByName('zhuqipeng');
$client->userUpdate('zhuqipeng');

前缀

\LaravelHproseRouter::group(['namespace' => 'App\Controllers', 'prefix' => 'user'], function ($route) {
    $route->add('getByName', function ($name) {
        return 'name: ' . $name;
    });

    $route->add('update', 'User@update');
});

客户端挪用

$client->user->getByName('zhuqipeng');
$client->user->update('zhuqipeng');
// 或许
$client->user_getByName('zhuqipeng');
$client->user_update('zhuqipeng');

启动效劳

php artisan hprose:socket_server

相干引荐:

Laravel框架路由设置总结、设置技能大全,laravel框架

Laravel框架中扩大函数、扩大自定义类的要领,laravel框架

以上就是基于 hprose/hprose-php开辟的Laravel扩大:laravel-hprosed的引见的细致内容,更多请关注ki4网别的相干文章!

标签:hprose/hprose-php