2012-03-25 74 views
0

我有一個用不同語言顯示國家的腳本。例如,西班牙語中的「英國」將是「Reino Unido」等。每種語言都存儲在不同的表中,如西班牙語的「name_es」或英語的「name_en」。然後通過爲每個用戶存儲的會話值選擇正確的表格。我所擁有的是這樣的:另一個變量內部的會話變量 - 如何?

if ($countries_id) 
    { 
     $sql_select_countries = $this->query_silent("SELECT name_".$_SESSION['language']." as name FROM " . DB_PREFIX . "countries WHERE 
      id IN (" . $countries_id . ")"); 

     if ($sql_select_countries) 
     { 
      while ($country_details = $this->fetch_array($sql_select_countries)) 
      { 
       $countries_array[] = $country_details['name']; 
      } 
     } 
    } 

注意的問題行是這樣的:

$countries_array[] = $country_details['name']; 

我需要它像

$countries_array[] = $country_details['name_$_SESSION['language']']; 

但我想不通的正確的語法:(

+0

'query_silent()' - 我喜歡這個名字! – 2012-03-25 16:09:14

回答

1

所以你想連接字符串'name_'與會話中存儲的價值?

$countries_array[] = $country_details['name_'.$_SESSION['language']]; 

我認爲,如果你添加一些言論標誌和大括號,你可以這樣做:

$countries_array[] = $country_details["name_{$_SESSION['language']}"]; 
+0

我覺得你搞砸了你最後一個例子的報價...... – 2012-03-25 16:30:10

+0

我確實,謝謝! – shanethehat 2012-03-25 16:47:17

+0

工作,謝謝:) – user1227914 2012-03-25 16:53:58

0
$countries_array[] = $country_details[$_SESSION["language"]];