1

所以我有我的 PHP IPN 脚本工作,现在我只是不确定如何获取帖子值?Paypal 将帖子作为这样的数组返回。

transaction[0].is_primary_receiver=false
&transaction[0].id_for_sender_txn=50E02759CC687801U
&log_default_shipping_address_in_transaction=false
&transaction[0].receiver=xxxxxxxxxx@gmail.com
&action_type=PAY
&transaction[1].status=Completed

显然还有更多,但你明白了,我尝试访问帖子以获得这样的状态。

$payment_status = $_POST['transaction'][1]['status']

但这不起作用,它返回第一个字母 C。那么我如何访问所有这些值。

4

1 回答 1

4

通过一点搜索,我发现此链接很有帮助:https ://developer.paypal.com/webapps/developer/docs/classic/ipn/ht_ipn/

页面最相关的部分:

// Reading POSTed data directly from $_POST causes serialization issues with array data in the POST.
// Instead, read raw POST data from the input stream. 
$raw_post_data = file_get_contents('php://input');
$raw_post_array = explode('&', $raw_post_data);
$myPost = array();
foreach ($raw_post_array as $keyval) {
    $keyval = explode ('=', $keyval);
    if (count($keyval) == 2)
        $myPost[$keyval[0]] = urldecode($keyval[1]);
}
于 2013-09-24T02:11:48.287 回答