2

我正在寻找这是否是一种可能的情况-

我的php页面调用prolog(并发送带有数据的查询),然后prolog代码运行并绑定某些(输出)变量,然后我将这些变量加载到mysql db中。

IE,

PHP -> 调用和发送数据 -> Prolog -> 执行目标并绑定输出变量 -> 将输出变量发送到 mysql db

我已经看过很多关于如何使用 sicstus 和 swi 等“生成”html页面的文档。但这与我想要实现的目标相反。任何指针?

谢谢!

4

3 回答 3

2

根据我以前必须将 PHP 与 Prolog 连接的项目的经验,我使用 php exec 函数从 PHP 调用 Prolog :

exec("\"c:/program files/swipl/bin/swipl.exe\"" -f prolog_filename.pl -g your_query)

exec 函数返回 Prolog 的输出,您可以根据需要(例如将其发送到您的 mysql 数据库)。

您可能需要相应地编辑序言路径。

于 2012-10-20T08:43:51.080 回答
0

绝对有可能做你想做的事。例如

http://www.swi-prolog.org/pldoc/package/odbc.html

将允许您使用 Prolog 中的 MySQL 数据库。但是,我相当肯定将 Prolog 程序的输出发送回 php,然后从 php 方面将其插入 mysql 将使您的生活变得更轻松。

于 2012-10-18T20:49:45.600 回答
0

从 Web 服务器调用 SWI-Prolog 可以按照 J.Paine here的说明完成,但在服务器端运行 SWI-Prolog 的首选方式是……作为 Web 服务器。

这是因为使用 SWI-Prolog 提供的扩展库更容易调试逻辑和获取格式化输出。

总有可能写一个PHP 扩展模块,底层语言是相同的 C,但这显然是一条艰难的道路。

于 2012-10-19T06:52:37.070 回答