定制 eduluz1976/action 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

eduluz1976/action

Composer 安装命令:

composer require eduluz1976/action

包简介

Dynamic action (method/function) execution wrapper.

README 文档

README

Introduction

This class intends to make programatic and dynamic functions calls.

How to use

To use the Action class, just use the factory method, to build a new object, passing the parameters to use on this function. At the end, just execute the instance's exec method, passing optionally the additional parameters.

The URI patterns you can use are:

Type Example
Simple function 'mySampleFunction()'
Class method '\namespace\MyClass::functionName()'
REST call* 'POST;https://user!password@my_domain.com:8081/api/v99/xpto?v1=1&v2=2#xpto'
  • Not implemented yet

Simple function

Make a call to a global function.

Example

function multiply($x,$y) {
    return $x * $y;
}

$action = Action::factory('multiply()');

$response = $action->exec(2,5);

// result = 10

Class method

Instantiate a class object, and execute the assigned method.

Constructor

If your class have a constructor method, and require any parameter, you can suply it on 3rd parameter of factory method:

$action = Action::factory('MyClass::myFunction()',[],['constructor'=>[1,'string',false]]);

On above the case, the values 1, 'string' and false will be applied on MyClass constructor.

Examples

class MyClass {


    public function myFunction($id, $fieldName) {
        // ...
        return [
            'id' => $id,
            'field_name'=> $fieldName
        ];
    }

}


$action = Action::factory('MyClass::myFunction()', [1, 'name']);

$response = $action->exec();

print_r($response);
 

Will display:

Array 
(
    [id] => 1
    [field_name] => name
)

URL call

The class ActionURLCallTest perform remote URL calls, and return the contents parsed.

Example

Let's suppose you want to make a call to an endpoint:

$url = 'post;https://username:password@my.hostname:9090/path?arg=value#anchor';

$action = Action::factory($url);

$response = $action->exec();

Testing

To perform tests, just run vendor/bin/phpunit from root project folder.

But to run the integration tests, is necessary start the local server to do it. On this case, just execute the script on ~/bin/run_integration_tests.sh , and in other terminal window, run phpunit.

统计信息

  • 总下载量: 78
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 2
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Apache-2.0
  • 更新时间: 2018-09-20

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固