我正在开发一个zendframework 2项目,并希望从外部源接收post变量。
价值来源的来源是支付网站(即世界支付和PayPal)。即确认已付款的付款的返还值。在外部网站上,我只是提供了我希望将信息返回到的网页的URL:
http://example-site.com/payments/payment-made
然后在控制器页面上的动作功能中我做了以下操作;
public function paymentMadeAction()
{
$contents = file_get_contents('php://input'); // read request contents
$data = explode('&', $contents);
if ($contents)
{
foreach($data as &$entry) {
$entry = explode('=', $entry);
$entry[1] = urldecode($entry[1]);
}
unset($entry);
}
print_r($data);
}
但是没有任何反应。我的意思是,我测试了它,但没有收到价值。当我去外部来源检查我的网站是否收到了确认信息已成功发送的信息
在从zend framework 2中的外部源接收信息时,是否需要遵循一个特殊的过程
非常感谢任何指导或建议。
更新
下面的是应该返回到站点的post变量的示例;它只是一个简单的http对象
POST /fail?installation=XXXXXX&msgType=authResult HTTP/1.0
Content-Type: application/x-www-form-urlencoded;charset=UTF-8
Host: www.worldpay.com
Content-Length: 973
User-Agent: WJHRO/1.0 (worldPay Java HTTP Request Object)
region=new+format+region&authAmountString=%26%23163%3B10.00&_SP.charEnc=UTF8&desc=&tel=&address1=new+format+address1)
答案 0 :(得分:0)
你是以绝对错误的方式做的,这是在ZF2动作中获取帖子(或查询或路由)变量的正确方法:
$this->params()->fromPost();
or
$this->request->getPost()->toArray();