использоваться в нативном php как
<?php
$lua = new Lua();
$lua->assign("php_var", array(1=>1, 2, 3)); //lua table index begin with 1
$lua->eval(<<<CODE
print(php_var);
CODE
);
?>
Дальше вы уже не нужны, так как надо писать обертки для того, что бы использовать во всяких фреймворках типа Laravel, как здесь часто отвечают RTFM
и без вот такой вот ебли как тут. Просто на Lua. В lua-скриптах. Без всяких обёрток на говноязыках.
Lua должно ставиться ровно так, как оно ставится. Хочешь я тебе прикручу вместо <?php $world = "PHP World" print("Hello from " . $world) ?> Вот такое? <?lua local world = 'Lua World' print('Hello from ' .. world) ?> Это не сложно. Просто обработка тегов вебсервером, какой-то темплейтизатор который эвалит куски кода из хтмля. Как вебсервер устроен, такой интерпретатор и будет. То что ты хочешь — оно типа универсальное. Это биндинг конкретно луёв конкретно к пхп. На самом деле, подобная методика совсем не для прода, потому что очень медленно: один интерпретатор разворачивает другой интерпретатор на каждый запрос, и каждый раз эвалит чанк кода, по новой реинициализируясь. Нормальные люди встраивают интерпретатор прям в вебсервер, чтобы тот и нормально работал с ме-е-е-едленными io-операциями типа файлов/сокетов, и чтобы многопоточность и кеширование корректно работало с конкретным интерпретатором, поэтому-то и есть разные файлики для пыха, для луёв, для перла и для хаскеля, хоть для жс: вебсервер смотрит на формат файла и думает, чем именно его интерпретировать, каким интерпретатором по списку. Ровно так это сделано в OpenResty.
Обсуждают сегодня