我有一个使用PHP和后端mysql制作的网站。有一个prolog文件(.pro扩展名)我想与这个网站集成。
我的prolog源文件可以像这样查询 -
myprolog(Input, Output).
所以我给prolog输入,它通过将它绑定到Output来返回它的结果。
我期待我的一个php页面,callprolog.php说通过传递Input
来查询这个prolog源文件,然后将结果从Ouput
存储到php变量中进行进一步处理。
实施 - PHP 5,MySQL,SWI Prolog。
请让我知道如何在php文件和prolog源之间建立这种连接,将数据传递给/从prolog / php文件传送。
谢谢!
答案 0 :(得分:2)
我做了一些项目,我需要在php和prolog(.pl)文件之间建立连接。 我就是这样做的: 我使用了这样的php exec函数:
exec(prolog_path -f $your_file_name.pro -g your_predicate/query_goes_here)
上面的代码行是定义prolog bin文件所在的位置,告诉prolog可以查询的文件名,然后输入所需的查询。 因此,在您的情况下,上面的代码行将如下所示:
exec("\"c:/program files/swipl/bin/swipl.exe\"" -f your_prolog_filename.pro -g myprolog(Input,Output))
您可能需要更改prolog路径,但这就是我实现php-prolog连接的方式。请阅读我为您提供的链接中exec功能的工作原理。