1

Paypals API TransactionSearch を呼び出して、データのフラットな配列を取得しています。この配列を再構築する必要があります。ペイパルから返される構造は次のとおりです。

 array(36){
[
    "L_TIMESTAMP0"
]=>string(28)"2012%2d09%2d18T22%3a10%3a13Z"[
    "L_TIMESTAMP1"
]=>string(28)"2012%2d09%2d18T19%3a55%3a41Z"[
    "L_TIMESTAMP2"
]=>string(28)"2012%2d09%2d18T19%3a55%3a41Z"[
    "L_TIMEZONE0"
]=>string(3)"GMT"[
    "L_TIMEZONE1"
]=>string(3)"GMT"[
    "L_TIMEZONE2"
]=>string(3)"GMT"[
    "L_TYPE0"
]=>string(7)"Payment"[
    "L_TYPE1"
]=>string(7)"Payment"[
    "L_TYPE2"
]=>string(7)"Payment"[
    "L_EMAIL0"
]=>string(26)"XXXXX%40hotmail%2ecom"[
    "L_EMAIL1"
]=>string(31)"XXXX%40lvcoxmail%2ecom"[
    "L_EMAIL2"
]=>string(23)"XXXXt%2ecom"[
    "L_TRANSACTIONID0"
]=>string(17)"13E586955G649992Y"[
    "L_TRANSACTIONID1"
]=>string(17)"8LH96897T3119113R"[
    "L_TRANSACTIONID2"
]=>string(17)"87U867057E085230E"[
    "L_STATUS0"
]=>string(9)"Completed"[
    "L_STATUS1"
]=>string(9)"Completed"[
    "L_STATUS2"
]=>string(9)"Completed"[
    "L_AMT0"
]=>string(7)"85%2e00"[
    "L_AMT1"
]=>string(7)"85%2e00"[
    "L_AMT2"
]=>string(7)"85%2e00"[
    "L_CURRENCYCODE0"
]=>string(3)"USD"[
    "L_CURRENCYCODE1"
]=>string(3)"USD"[
    "L_CURRENCYCODE2"
]=>string(3)"USD"[
    "L_FEEAMT0"
]=>string(9)"%2d2%2e17"[
    "L_FEEAMT1"
]=>string(9)"%2d2%2e17"[
    "L_FEEAMT2"
]=>string(9)"%2d2%2e17"[
    "L_NETAMT0"
]=>string(7)"82%2e83"[
    "L_NETAMT1"
]=>string(7)"82%2e83"[
    "L_NETAMT2"
]=>string(7)"82%2e83"[
    "TIMESTAMP"
]=>string(28)"2012%2d11%2d08T14%3a24%3a30Z"[
    "CORRELATIONID"
]=>string(13)"52c22d68648cd"[
    "ACK"
]=>string(7)"Success"[
    "VERSION"
]=>string(6)"51%2e0"[
    "BUILD"
]=>string(7)"4137385"

}

配列を次のようにリセットする必要があります: ["L_STATUSn"]=>string(9)"Completed" ["L_TRANSACTIONIDn"]=>string(17)"8LH96897T3119113R"

'n' は番号で、paypal が返す配列キー番号です。

これが私が使用しているコードです。

        $i = 0;
    $c = 0;
    foreach ($comparison AS $aKey => $v) {
        $findme1 = 'L_TIMESTAMP'.$i++;
        $findme2 = 'L_STATUS'.$c++;
        $txid = $myarray[$findme1];
        $status = $myarray[$findme2];
        $TXid = array_search('$findme1', $aKey);
        $Status = array_search('$findme2', $aKey);
        $TxID[] = array('Status' => $aStatus, 'TransactionID' => $aTransactionID);
        }

この配列を再構築するためのより良い方法に感謝します。私が使用しようとしている方法はあまり効率的ではないようです。

4

1 に答える 1