如何从php页面执行tcl脚本并检索输出

时间:2013-07-10 09:40:45

标签: php tcl

我的项目需要我需要生成一个前端(php),其中包含所有数据输入fiels。使用这些数据作为输入,我需要执行一个TCL脚本。执行完成后,php页面应该能够获取TCL脚本的输出并显示它。

我已生成示例脚本但无法执行它。 你能帮帮我吗。

提前致谢

我的PHP脚本是:

<!DOCTYPE html>
<html>
    <body>
        <?php
            function print_procedure ($arg) {
                echo exec("/usr/bin/tclsh /test.tcl");
            }
            $script_name='test.tcl';
            print_procedure($script_name);
        ?>
    </body>
</html>

我的TCL脚本是:

set a 10
set b 20
set c [expr $a + $b]
return c

1 个答案:

答案 0 :(得分:1)

您的tcl脚本应该写在stdout:

set a 10
set b 20
set c [expr {$a + $b}]
puts $c

如果你的tcl脚本应该输出多行:

e.g:

puts $c
puts $c
puts $c

你可以在PHP数组中捕获它们:

e.g:

$array = array();
function print_procedure ($arg) {
    echo exec("/opt/tcl8.5/bin/tclsh test.tcl",$array);
    //print_r($array);
}