【问题标题】:Calling php code from php code on different server从不同服务器上的 php 代码调用 php 代码
【发布时间】:2010-09-07 20:40:26
【问题描述】:

情况如下。我的计算机上有一个本地(开发)PHP 服务器(Win + IIS),我想在远程服务器上调用一个函数,因为远程服务器(linux)上有一个不在本地计算机上运行的可执行文件.
所以在远程服务器上会是一个简单的 PHP 页面,它使用给定的参数调用可执行文件并返回结果。
我可以想象从 javascript 对这个远程 PHP 页面进行 ajax 调用,但在我的情况下,我在本地使用 PHPUnit,有一次我需要为特定数据(可执行文件提供)调用这个远程页面。
所以我的问题是 - 如何从 PHP(本地)调用 PHP(远程)?网络服务是要走的路还是可以更简单地完成?

【问题讨论】:

  • 看到 phpunit 标记我还建议有一个用于远程数据的存根和一个配置开关以启用/禁用存根的使用。
  • 是的,在我写完这篇文章之后,我也开始考虑 stub/mock 这个...

标签: php web-services curl phpunit


【解决方案1】:
$output = file_get_contents('http://your.remote.server/page.php?args=12345');

或者您可以使用 cURL。请记住,当您在 PHP 中执行文件时,您应该限制其他人这样做的能力(即密码保护页面/目录)并在运行它们之前转义 shell 参数。

【讨论】:

    【解决方案2】:
    $param['one'] = 1;
    $param['two'] = 2;
    file_get_contents("http://example.com/service.php?".http_build_query($param));
    

    【讨论】:

    【解决方案3】:

    您可以使用PHP cURL library 查询远程服务器上的脚本。

    【讨论】:

      【解决方案4】:

      使用fopencurl 调用您的远程脚本。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-07-19
        • 2011-10-26
        • 2023-03-25
        • 1970-01-01
        • 1970-01-01
        • 2016-05-08
        • 1970-01-01
        • 2011-02-09
        相关资源
        最近更新 更多