LuaSandbox::registerLibrary
(PECL luasandbox >= 1.0.0)
LuaSandbox::registerLibrary — Register a set of PHP functions as a Lua library
説明
public LuaSandbox::registerLibrary
( string
$libname
, array $functions
) : voidRegisters a set of PHP functions as a Lua library, so that Lua can call the relevant PHP code.
For more information about calling Lua functions and the return values, see LuaSandboxFunction::call().
パラメータ
返り値
値を返しません。
例
例1 Registering PHP functions to call from Lua
<?php
// create a new LuaSandbox
$sandbox = new LuaSandbox();
// Register some functions in the Lua environment
function frobnosticate( $v ) {
return [ $v + 42 ];
}
$sandbox->registerLibrary( 'php', [
'frobnosticate' => 'frobnosticate',
'output' => function ( $string ) {
echo "$string\n";
},
'error' => function () {
throw new LuaSandboxRuntimeError( "Something is wrong" );
}
] );
?>
参考
- LuaSandbox::loadString() - Load Lua code into the Lua environment
- LuaSandbox::wrapPhpFunction() - Wrap a PHP callable in a LuaSandboxFunction