2016-05-13 53 views
0

我是一名初級程序員。最近我一直在嘗試用PHP開發。我正在嘗試創建一個關於國家的基本頁面。出於某種原因,我無法從此API頁面獲取信息。任何人都可以給我一些提示嗎?無法使用PHP訪問API密鑰...任何想法是什麼?

下面是示例國家數組的樣子。理想情況下,我想嘗試抓住「名稱」屬性。

enter image description here

這是我的HTML和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

對於初學者:http://php.net/manual/en/language.types.string.php#language.types.string.syntax.single – AbraCadaver

回答

0

你返回一個關聯數組,所以使用的標識符是這樣的:

+0

不幸的是,這也不起作用。我得到這個錯誤:語法錯誤,意外的'名稱'(T_STRING),期待','或';' –

0

如果對象使用下面的代碼。

echo $country_array[0]->name; 

對於陣列中使用

echo $country_array[0]['name']; 
0
  1. 您需要訪問正確的數組index,在這種情況下0
  2. 變量不擴大單引號,則需要使用 雙引號和環繞它與支架{}(TKS AbraCadaver),即:

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

差不多:'{$ country_array [0] ['name']}' – AbraCadaver

+0

Ops,我的壞......糾正了,TKS! –

+0

非常感謝您的信息! –

相關問題