Как изменить тип тела ответа stdObject на ассоциативный массив по умолчанию в unirest для php - PullRequest
1 голос
/ 25 января 2020

iam использует unirest lib в php, поэтому каждый запрос имеет ответ

 $response = Unirest\Request::get(
                        env('JIRA_APP_DOMAIN') . 'search',
                        ['Accept' => 'application/json'],
                        [
                            'jql' => 'project = ' . env("JIRA_PROJECT_KEY") . ' AND issuetype in (' . $steps[$request->step] . ') ORDER BY priority DESC, updated DESC',
                            'maxResults' => 20,
                            'startAt' => 0
                        ]
        );

этот $ response var имеет атрибут body, но по умолчанию возвращает массив StdObject

$response->body// gives StdObject

$response->body->name; // i dont want to use like this

$response->body['name']; // this is i want to use

Это тяжело с медленным, есть атрибут raw_body , но я не хочу конвертировать ассоциативный массив, используя функцию json_decode .

Есть любой способ изменить тип возвращаемого тела по умолчанию ..

Ответы [ 2 ]

0 голосов
/ 25 января 2020

Я нашел код в этой библиотеке. он может изменить стандартный вывод StdObject на ассоциативный массив

Unirest\Request::jsonOpts(true);
0 голосов
/ 25 января 2020
$parsedBody = json_decode(json_encode($response->body), true);
...