2016-05-13 3 views
0

Ich bin ein Junior-Programmierer. Vor kurzem habe ich versucht, in PHP zu entwickeln. Ich versuche eine grundlegende Seite über Länder zu erstellen. Aus irgendeinem Grund kann ich die Informationen von dieser API-Seite nicht abrufen. Kann mir jemand ein paar Tipps geben?Zugriff auf API-Schlüssel mit PHP nicht möglich ... irgendeine Idee, was los ist?

Hier sehen Sie, wie ein Beispiel-Länder-Array aussieht. Idealerweise möchte ich versuchen, das Attribut "name" zu erfassen.

enter image description here

Hier ist mein HTML und PHP:

<?php 

if(!empty($_GET['country'])) { 
$country_url = 'https://restcountries.eu/rest/v1/name/' . urlencode($_GET['country']) . '?fullText=true'; 
$country_json = file_get_contents($country_url); 
$country_array = json_decode($country_url, true); 
      } 

?> 

<!DOCTYPE html> 
    <html lang="en"> 
     <head> 
      <meta charset = "utf-8" /> 
      <title> PHP Country Practice </title> 
     </head> 
    <body> 
     <form action=""> 
      <input type = "text" name = "country" /> 
      <button type="submit">submit </button> 
     </form> 

<?php 

if(!empty($country_array)) { 
    echo '<p> $country_array['name'] </p>'; 
    } 
    ?> 
</body> 
</html> 
+0

Für Anfänger: http://php.net/manual/en/language.types.string.php#language.types.string.syntax.single – AbraCadaver

Antwort

0

Sie ein assoziatives Array zurückkehrt, so verwenden Bezeichner wie folgt aus:

+0

Leider funktioniert das auch nicht. Ich erhalte diesen Fehler: Syntaxfehler, unerwarteter 'Name' (T_STRING), erwartet ',' oder ';' –

0

Wenn Objekt verwenden die unter dem Code.

echo $country_array[0]->name; 

Für Array Verwendung

echo $country_array[0]['name']; 
0
  1. Sie benötigen index die richtige Array zuzugreifen, in diesem Fall 0.
  2. Variablen innerhalb Apostrophe nicht, müssen Sie mit Klammern {} (tks AbraCadaver), dh verwenden doppelte Anführungszeichen und umgeben sie erweitern:

echo "<p> {$country_array[0]['name']} </p>"; 
+0

Fast: '{$ country_array [0] ['name']}' – AbraCadaver

+0

Ops, meine schlechte ... korrigiert, TKS! –

+0

Vielen Dank für die Informationen! –