Java 与 PHP 的连接

标签 java php

我正在构建一个带有插件系统的基于 Java 的 HTTP 服务器。我正在尝试找到一种简单而优雅的方法来将 PHP 作为模板引擎插件加载。最好是安装插件的用户也需要非常多的步骤,例如指向 php 目录,然后插件完成其余的工作。 然而,事实证明 Google 并没有多大帮助(无论我使用什么关键字,结果都毫无用处)。

我发现了一些关于 java-php-bridge 的内容,这似乎可以工作,但它是一个相当大的旧(java 1.4 支持)库,而且我感觉有一个更简单的专用解决方案。

我希望能够将带有变量的映射推送到 PHP( header 、获取变量、自定义变量等) 并检索解析后的 PHP(包括已设置的 header 和其他可能的输出)

并且,如果可能的话,我想用尽可能少的计算时间来完成此操作(例如,我可以每次都调用 php.exe,但如果我是正确的,这是一种相当昂贵的处理方式)

最佳答案

如果你想以Web方式与PHP交互( header 、请求变量等),可以使用:

  1. CGI模式(缓慢且无效,但相当简单)。
  2. FastCGI模式(快速有效,但需要单独的 FastCGI 服务器运行)。
  3. SAPI (相当快且有效,但需要单独的 SAPI 服务器运行)。

您可以通过以下方式之一搜索客户端 Java 代码以与 PHP 进行交互。找不到解决方案,您可以编写自己的客户端部分。快速有效的新解决方案对于程序员和最终用户来说将变得简单。

使用C/C++ php引擎可以用作库并链接到应用程序中(如Apache httpd中的mod_php)。这是最快的方法。但这对于 Java 来说是不可能的。

关于Java 与 PHP 的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26955595/

相关文章:

java - org.hibernate.Query 在调用 list 方法时以哪种形式返回结果?

java - 为什么字符串不需要新关键字

java - 在 Blackberry 上调整位图大小,同时保留 Alpha 数据

java - 如何更改最里面的嵌套语句,但保留外部语句?

php - 千城万户的关系,什么才是正确的做法?

php - 是否有一种标准方法来分离 Symfony2 应用程序的单元测试和功能测试?

php - 通过变量值获取常量值

java - android.system.ErrnoException 错误

javascript - 两个单独的$.ajax在点击函数上互相调用 "kill"

php - 在 php/mysql 中检测结果集的结尾