用户名/sadekbaroudi/operation-state

处理可执行动作的操作状态,具有撤销功能。例如,PHP 中的事务和回滚。

dev-master 2013-12-31 07:59 UTC

This package is not auto-updated.

Last update: 2024-09-23 15:51:10 UTC


README

operation-state 构建状态 覆盖率状态 依赖状态 operation-state

简单的 PHP 类,用于处理可执行动作的操作状态,并具有撤销功能。换句话说,它是 PHP 中事务和回滚的辅助工具。

其目的是提供一种可靠的执行动作的方法,并在适用时能够撤销这些动作。此功能将允许您创建多个可执行动作组及其相应的撤销动作。

用法

use Sadekbaroudi\OperationState\OperationStateManager;
use Sadekbaroudi\OperationState\OperationState;

$yourClass = new YourClassName();

// Instantiate the manager
$osm = new OperationStateManager();

// Note that the setExecute and setUndo require PHP is_callable compliant parameters, as OperationState uses those methods
$os = new OperationState();
$os->setExecute(array($yourClass, 'yourMethod'), array('param1', $param2, array('foo' => 'bar')));
$os->setUndo(array($yourClass, 'undoMethod'), array('param1'));
$osm->add($os);

try {
    $osm->execute($os);
} catch ( OperationStateException $e ) {
    $osm->undo($os);
    throw $e;
}

安装

可以使用 Composer 通过将库作为依赖项添加到您的 composer.json 文件中安装 Operation State。

{
    "require": {
        "sadekbaroudi/operation-state": "*@dev"
    }
}

有关安装和用法说明,请参阅 Composer 的文档