(PECL luasandbox >= 1.0.0)
LuaSandbox::registerLibrary — Регистрирует набор PHP-функций как библиотеку Lua
Регистрирует набор PHP-функций как библиотеку Lua, чтобы Lua мог вызывать соответствующий код PHP.
Для получения дополнительной информации о вызове функций Lua и возвращаемых значениях смотрите LuaSandboxFunction::call().
libnamefunctionsФункция не возвращает значения после выполнения.
Пример #1 Регистрация PHP-функций для вызова из Lua
<?php
// создание нового LuaSandbox
$sandbox = new LuaSandbox();
// регистрация некоторых функций в среде Lua
function frobnosticate( $v ) {
return [ $v + 42 ];
}
$sandbox->registerLibrary( 'php', [
'frobnosticate' => 'frobnosticate',
'output' => function ( $string ) {
echo "$string\n";
},
'error' => function () {
throw new LuaSandboxRuntimeError( "Что-то пошло не так" );
}
] );
?>