在本教程中,我们将分享使用 PHP 发送 post 请求的 3 种有效方法。
使用 Pecl_Http
通常,Pecl_Http 结合了两个接口。
第一个被认为是过程的,第二个是面向对象的。
让我们从发现第一个开始。
它为我们提供了比 curl 更简单的方法。
这是一个脚本,它被翻译为 pecl_http:
$url = 'http://api.onitroad.com/services/xmlrpc/'; $response = http_post_data($url, $xml);
使用 PHP Curl
PHP cURL 扩展是一种非常简单的方式,允许将不同的标志与 setopt() 调用结合起来。
下面是一个带有 $xml 变量的示例,其中包含准备发送的 XML:
$url = 'http://api.onitroad.com/services/xmlrpc/'; $ch = curl_init($url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $xml); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch);
从上面的示例中可以看出,首先初始化连接,然后使用 setopt() 设置一些选项。
这些操作通知 PHP 发出 post 请求。
使用 Pecl_HTTP 的面向对象 (OO) 接口
如上所述,xpecl_http 的第二个接口被认为是面向对象的。
它类似于上面演示的 2 个扩展,但应用了不同的接口。
它的代码如下所示:
$url = 'http://api.onitroad.com/services/xmlrpc/'; $request = new HTTPRequest($url, HTTP_METH_POST); $request->setRawPostData($xml); $request->send(); $response = $request->getResponseBody();
我们可以注意到此代码比前一个更长。
我们可能认为它更复杂,但它和以前的一样强大和灵活。
因此,在实践中实施它可能是一个出色的选择。
日期:2020-06-02 22:15:53 来源:oir作者:oir
