使用YII Framework发送HTTP Post请求

时间:2012-04-22 07:36:31

标签: php httpwebrequest yii http-post

有从我的Controller发送HTTP post请求的方法吗? 我想发布数据,结果将返回JSON。 我没有找到关于yii的扩展和信息。

4 个答案:

答案 0 :(得分:2)

下面的代码应该适合您,只需确保启用php_curl扩展名。

<?php

// URL on which we have to post data
$url = "http://localhost/tutorials/post.php";

// Any other field you might want to post
$json_data = json_encode(array("name"=>"PHP Rockstart", "age"=>29));
$post_data['json_data'] = $json_data;
$post_data['secure_hash'] = mktime();

// Initialize cURL
$ch = curl_init();

// Set URL on which you want to post the Form and/or data
curl_setopt($ch, CURLOPT_URL, $url);
// Data+Files to be posted
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
// Pass TRUE or 1 if you want to wait for and catch the response against the request made
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// For Debug mode; shows up any error encountered during the operation
curl_setopt($ch, CURLOPT_VERBOSE, 1);
// Execute the request
$response = curl_exec($ch);

// Just for debug: to see response
echo $response;

答案 1 :(得分:1)

我找到了解决方法: http://www.yiiframework.com/extension/ehttpclient/ 这是Zend Framework的扩展

答案 2 :(得分:1)

yii-curl是您可以使用的另一个扩展程序,显然是PHP's cURL的包装器。

答案 3 :(得分:0)

您可以使用curl PHP扩展程序来执行此操作。