你好,我正在用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...
然后,您可以随心所欲地将数据存储在数据库中。