亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

用于 Paypal Payflow 響應的 PHP 正則表達式

用于 Paypal Payflow 響應的 PHP 正則表達式

PHP
皈依舞 2021-10-15 17:30:24
我正在使用 Paypal Payflow 進行付款,現在我無法提取 Paypal 響應。Paypal 響應以下面給出的格式發送RESULT=0&RESPMSG=Approved&SECURETOKEN[25]=Fj+1AFUWft0+I0CUFOKh5WA== &SECURETOKENID=9a9ea8208de1413abc3d60c86cb1f4c5方括號內的值[]是實際值的長度。例如,SECURETOKEN是一個參數,它的值為'Fj+1AFUWft0+I0CUFOKh5WA=='。長度為 25 個字符。如何從 PHP 的結果中提取每個參數及其對應的值。我對正則表達式不太好,我無法在網上找到任何解決方案。在這種情況下,用&和拆分=不起作用。
查看完整描述

2 回答

?
慕哥9229398

TA貢獻1877條經驗 獲得超6個贊

該字符串看起來像一個 url,所以簡單的方法是使用[parse_str()][1]它將給定的字符串轉換為一個“格式良好”的數組。


重要的是,函數的返回值將存儲在第二個參數中($keys在本例中)。


Ideone - 示例


$str = 'RESULT=0&RESPMSG=Approved&SECURETOKEN[25]=Fj+1AFUWft0+I0CUFOKh5WA== &SECURETOKENID=9a9ea8208de1413abc3d60c86cb1f4c5';

parse_str($str, $keys);


print_r($keys);

輸出:


Array

(

    [RESULT] => 0

    [RESPMSG] => Approved

    [SECURETOKEN] => Array

        (

            [25] => Fj 1AFUWft0 I0CUFOKh5WA== 

        )


    [SECURETOKENID] => 9a9ea8208de1413abc3d60c86cb1f4c5

)


查看完整回答
反對 回復 2021-10-15
?
喵喔喔

TA貢獻1735條經驗 獲得超5個贊

使用此答案將響應解析為數組是正確的開始。這是從數組中訪問這些值的方法:


$str = 'RESULT=0&RESPMSG=Approved&SECURETOKEN[25]=Fj+1AFUWft0+I0CUFOKh5WA== &SECURETOKENID=9a9ea8208de1413abc3d60c86cb1f4c5';

parse_str( $str, $values );

現在,要獲得您想要的值:


$tokens = $values['SECURETOKEN'];

// results in an array: ['25' => 'Fj+1AFUWft0+I0CUFOKh5WA=='];


$token = reset( $tokens ); // results in 'Fj+1AFUWft0+I0CUFOKh5WA=='

$length = key( $tokens ); // results in '25'


查看完整回答
反對 回復 2021-10-15
  • 2 回答
  • 0 關注
  • 181 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號