2024年PHP开发者大会日本站

Lua::registerCallback

(无版本信息可用,可能仅存在于Git中)

Lua::registerCallback向Lua注册PHP函数

描述

public Lua::registerCallback(string $name, callable $function): mixed

将PHP函数注册到Lua中,作为名为“$name”的函数。

参数

name

function

有效的PHP函数回调

返回值

返回$this,对于错误的参数返回null,其他失败情况返回false

示例

示例 #1 Lua::registerCallback()示例

<?php
$lua
= new Lua();
$lua->registerCallback("echo", "var_dump");
$lua->eval(<<<CODE
echo({1, 2, 3});
CODE
);
?>

以上示例将输出

array(3) {
  [1]=>
  float(1)
  [2]=>
  float(2)
  [3]=>
  float(3)
}
添加备注

用户贡献的注释 1条注释

0
turn_and_turn at sina dot com
4年前
// 初始化lua
$lua = new Lua();

/**
* Hello world 方法
*/
function helloWorld()
{
return "hello world";
}

// 注册我们的hello world方法
$lua->registerCallback("helloWorld", helloWorld);
$lua->eval("
-- 调用php方法
local retVal = helloWorld()

print(retVal)
");

// 注册我们的hello world方法,但使用另一个名称
$lua->registerCallback("worldHello", helloWorld);

// 运行我们的lua脚本
$lua->eval("
-- 调用php方法
local retVal = worldHello()

print(retVal)
");
To Top