如何在数据库中存储HDFC支付网关响应数据值


How to store HDFC payment gateway response data value in database

你好,我正在用php实现HDFC新的支付网关。一切都运作良好。但是作为回应,我得到的数据字符串如下:

txn_status=0300|txn_msg=成功|txn_err_msg=NA|clnt_txn_ref=000000|tpsl_bank_cd=000000|tpsl_txn_id=000000|txn_amt=1.00|clnt_rqst_meta={itc:NIC~TXN0001~122333~rt14154~8 2014年3月~付款~付款}{custname:test}|tpsl_txn_time=15-02-2016 11:44:41|tpsl_rfnd_id=NA|bal_amt=NA|rqst_token=000000-205b-4253-bbb8-0e9976e22147|hash=

000000000000000000000

从上面的数据字符串中,我想获取要存储在数据库中的特定值。

例如

我想将txn_msg,日期时间,交易ID等存储到数据库中。我怎样才能得到它?

您可以通过

两个步骤explode()字符串:

$values = explode("|", $yourstring);
foreach($values as $val) {
    $keyval = explode("=", $val);
    $ass_array[$keyval[0]] = $keyval[1];
}

这样,您将拥有一个包含如下数据的关联数组:

"txn_status" => "0300",
"txn_msg" => "success",
and so on...

然后,您可以随心所欲地将数据存储在数据库中。