Как получить сообщение об ошибке в отправке? - PullRequest
0 голосов
/ 08 ноября 2019

Я использую код PHP и хочу получить сообщения об ошибках в следующих предложениях:

$str='Data Error (400): {"error_messages":["Currency is not included in the list (IDR, SGD)"]} | Request url: https://app.sandbox.xxx.com/snap/v1/transactions'

$str='Data Error (411): {"error_messages":["Access denied, please check client key or server key"]} | Request url: https://app.sandbox.xxx.com/snap/v1/transactions';

$str='Data Error (400): {"error_messages":["Order ID Already Paid and Utilized"]} | Request url: https://app.sandbox.xxx.com/snap/v1/transactions';

$str='Data Error (401): {"error_messages":["Invalid Transaction Type"]} | Request url: https://app.sandbox.xxx.com/snap/v1/transactions';

Выше примеры я хочу показать вывод сообщений ниже:

Currency is not included in the list (IDR, SGD)

Access denied, please check client key or server key

Order ID Already Paid and Utilized

Invalid Transaction Type

Я пытаюсь использовать приведенный ниже код регулярного выражения:

preg_match('/{(.*?)}/', $str, $matches);
echo "<pre>";
print_r($matches[0]);

Но я получаю ответ вроде: {"error_messages":["Currency is not included in the list (IDR, SGD)"]} вместо Currency is not included in the list (IDR, SGD)

Пожалуйста, помогите мне, как получить только текст сообщения об ошибке

1 Ответ

1 голос
/ 08 ноября 2019

Вы можете попробовать это регулярное выражение

preg_match('/\[\"(.*?)\"\]/', $str, $matches);
echo "<pre>";
print_r($matches[0]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...