首页 > 解决方案 > 如何从 PHP 中的字符串中获取表达式?

问题描述

请问,如何从字符串中提取表达式?例如,我在下面有这个字符串:

RECEIPT_NO=5001809252729& PAYMENT_CODE=500858991537884262034 &MERCHANT_CODE=0350000AFT&TRANS_AMOUNT=42990.0&TRANS_DATE=2018/09/25 14:04:28&TRANS_DESCR=Victor-300%20Level%20-001-

我想要做的是将用户输入的值与粗体值进行比较如何使用 PHP 进行处理?

我曾尝试使用str_split('/[&]/', $string);,但我没有得到我想要的。请帮忙。
谢谢。

标签: phpstring

解决方案


您有一个标准 HTTP“查询字符串”格式的字符串(百分比编码和&分隔键 = 值对)。处理它的最简单方法是使用 PHP 的内置parse_str()函数:

$items = [];
parse_str($string, $items);
echo $items["PAYMENT_CODE"];

如果这个函数不存在,你可以重新实现它;

$items = [];
foreach (explode("&", $string) as $item) {
    list($key, $val) = explode("=", $item, 2);
    $items[urldecode($key)] = urldecode($val);
}

推荐阅读