Как вернуть ответ в формате JSON - Codeigniter - PullRequest
0 голосов
/ 03 мая 2019

Я вернул ответ {\"status\":1,\"order-id\":\"8D0D3EEB-69D2-432D-9CDF-5ADCD42A00FC\",\"guest-checkout\":\"TRUE\",\"} и пытаюсь получить Статус .

public function test()
{

      $apiurl = "****";
      $data = [
        'merchant-id' => $merchantId,
        'api-key' => $apiKey,           
    ];

    $ch = curl_init($apiurl);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);
    curl_close($ch);
    $data = json_encode($result);

    echo $data->status;
}

Но когда я делаю это data->status, он возвращается пустым. Что я могу здесь делать не так?

1 Ответ

0 голосов
/ 03 мая 2019

json_encode возвращает строку, поэтому вы не сможете получить к ней доступ как к объекту. Если вы хотите это как объект, вам нужно сделать что-то вроде этого:

$data = json_decode(json_encode($result));

echo $data->status;

Возможно, вам даже не нужно кодировать его, но, не видя данных, возвращаемых curl, я не могу быть уверен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...