2017-12-24 6 views
-3

ich diese Fehlermeldung erhalteFehler Illegal String-Offset, wenn Daten von api Lumen bekommen

"Illegal string 'code_room' Offset"

, wenn ich Daten von api erhalten code_room. und ich erkannte, dass dieser Codeabschnitt in der Datei falsch ist. Aber ich bin noch nicht so gut in PHP und ich frage mich, ob jemand mir helfen kann, diesen Abschnitt neu zu schreiben, um den Fehler zu beseitigen. Vielen Dank!

Mein Code

  <?php 
      $id_class = $post['id_room_class']; 
      $response7 = \Unirest\Request::get($uri.'/room/'.$id_class, $headers); //API URI 
      $data7 = $response7->raw_body; // Unparsed body 
      $roomtypeclass = json_decode($data7, true); 
      foreach ($roomtypeclass as $get) { ?> 
      <button class="btn m-btn--square btn-success" data-dismiss="modal" id="btnRoom" onclick="showData2();"> 
      <?php echo $get['code_room']; ?> 
      </button> 
      <?php } ?> 
+0

können Sie überprüfen, var_damp ($ roomtypeclass); ? –

Antwort

1

Die illegal Offset bedeutet, dass der Index Ihr verweisen nicht existiert. In diesem Fall ist der 'code_room'-Index des Arrays wahrscheinlich nicht definiert. Um den Fehler zu vermeiden, ändern Sie diese Zeile:

<?php echo $get['code_room']; ?> 

auf unter Code:

<?php 
    if (isset($get['code_room']) && !empty($get['code_room'])) { 
     echo $get['code_room']; 
    } 
?> 
+0

seine Arbeit, aber der Datencode Raum wird nicht angezeigt. Ich wundere mich warum? –

+0

Führe ein 'var_dump ($ get)' oder 'print_r ($ get)' aus und überprüfe, ob es irgendwelche Daten/Werte für 'code_room' gibt. –

+0

Es ist kein Array. Sie müssen '$ get-> code_room' verwenden. Versuch es. –