Получение ошибки при передаче декодированных данных json из контроллера для просмотра - PullRequest
0 голосов
/ 05 мая 2018

когда я использую dd($arr) в контроллере, декодированные данные JSON печатаются правильно. Как я могу передать эти декодированные данные JSON в мое представление?

Код контроллера

public function test()
{
    // $sld = $request['sld'];
    // $tld = $request['tld'];
    $response = Curl::to('https://reseller.enom.com/interface.asp?command=check&sld=decksys&tld=info&responsetype=xml&uid=resellid&pw=resellpw')
        ->get();

   //check if we are getting a response

 $xml = simplexml_load_string($response);
 $json   = json_encode($xml);

 $arr = json_decode($json, true);
 dd($arr);
 return view('clientlayout.main.test', compact('arr'));

}

Файл Blade:

`{{ $arr }}` 

Файл моего маршрута указан ниже:

 Route::get('/test','EnomController@test');

Как решить эту ошибку?

htmlspecialchars () ожидает, что параметр 1 будет строкой, задан массив

Ответы [ 2 ]

0 голосов
/ 05 мая 2018

Ответ на эту ошибку уже доступен в стеке, доступ к тем объектам, которые являются пустыми или пустыми, является ссылкой на решение: htmlspecialchars ожидает, что параметр 1 будет строкой

нормально в контроллере использовать curl как:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,
            "https://reseller.enom.com/interface.asp?command=check&sld=decksys&tld=info&responsetype=json&uid=resellid&pw=resellpw");
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_ENCODING, "gzip,deflate");
$arr  = json_decode(curl_exec($ch), true);
curl_close($ch);

затем вернуть данные для просмотра, используйте цикл foreach в представлении, например:

@foreach($arr as $item)
    {{$item['Command']}}
    {{$item['APIType']}}
@endforeach

и хотите проверить перед использованием печати isset:

@if(isset($item['Command']))
    {{$item['Command']}}
@endif

Надеюсь, эта помощь

0 голосов
/ 05 мая 2018
return view('clientlayout.main.test', compact('arr'))->with('arr', $arr); 

и ваш взгляд: {{ $data['obj'] }} будет работать.

...