Registra um conjunto de funções PHP como uma biblioteca Lua

# LuaSandbox::registerLibrary

(PECL luasandbox >= 1.0.0)

LuaSandbox::registerLibrary — Registra um conjunto de funções PHP como uma biblioteca Lua

### Descrição

public function LuaSandbox::registerLibrary(string `$libname`, array `$functions`): void

Registra um conjunto de funções PHP como uma biblioteca Lua, para que Lua possa chamar o código PHP relevante.

Para mais informações sobre como chamar funções Lua e os valores de retorno, veja LuaSandboxFunction::call().

### Parâmetros

`libname`
  O nome da biblioteca. No estado Lua, a variável global deste nome será definida para a tabela de funções. Se a tabela já existir, as novas funções serão adicionadas a ela.
`functions`
  Um array, onde cada chave é um nome de função e cada valor é um callable PHP correspondente.

### Valor Retornado

Nenhum valor é retornado.

### Exemplos

Exemplo #1 Registrando funções PHP para chamar a partir de Lua

    <?php

    // Cria um novo LuaSandbox
    $sandbox = new LuaSandbox();

    // Registra algumas funções no ambiente Lua

    function frobnosticate( $v ) {
        return [ $v + 42 ];
    }

    $sandbox->registerLibrary( 'php', [
        'frobnosticate' => 'frobnosticate',
        'output' => function ( $string ) {
            echo "$string\n";
        },
        'error' => function () {
            throw new LuaSandboxRuntimeError( "Algo está errado" );
        }
    ] );

    ?>

### Veja Também

- LuaSandbox::loadString() - Carrega código Lua no ambiente Lua
- LuaSandbox::wrapPhpFunction() - Encapsula um chamável PHP em uma LuaSandboxFunction

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open