2012-07-12 84 views
0

我需要將xml放入數組,然後使用連接函數來顯示xml文件 我已經提取了xml,但不知道如何使用連接函數代碼。 請幫我弄清楚這一點。 下面是XML代碼:join()函數php到數組

<ValCurs Date="06.07.2012" name="Ratele oficiale de schimb"> 
<Valute ID="47"> 
<NumCode>978</NumCode> 
<CharCode>EUR</CharCode> 
<Nominal>1</Nominal> 
<Name>Euro</Name> 
<Value>15.3051</Value> 
</Valute> 
<Valute ID="44"> 
<NumCode>840</NumCode> 
<CharCode>USD</CharCode> 
<Nominal>1</Nominal> 
<Name>Dolar S.U.A.</Name> 
<Value>12.2343</Value> 

功能來extraxt XML:

function curs() { 
    $date = date("d.m.Y"); 
    $link = 'http://bnm.md/md/official_exchange_rates?get_xml=1&date='.$date; 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, $link); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    $xml_array = curl_exec($ch); 
    curl_close($ch); 
    $xml_array = file_get_contents($link); 

    $values = array(); 

$curs = new SimpleXMLElement($xml_array); 

foreach($curs as $key => $value) { 

    if (($value->CharCode) == 'USD') { 

    $values .= $value->Name." - ".$value->Value.", "; 
    } 

    if (($value->CharCode) == 'EUR') { 

     $values .= $value->Name." - ".$value->Value.", "; 
    } 
    } 

    $value = str_replace(',', '.', $values); 

    return $value; 
} 
+0

對於'join()'(又名'implode()'),你需要一個數組 - 你沒有生成一個數組,所以你沒有內爆。 – 2012-07-12 10:17:40

+0

我該怎麼做? 請問您可以幫我 – rellu 2012-07-17 11:59:16

+0

這裏是我需要做的,創建一個數組:$ allowed_currencies = array('EUR','USD') 和insted if((value-> CharCode)=='USD '){ if(($ value-> CharCode)=='EUR'){ 檢查並從美元中提取美元和歐元allowed_currencies – rellu 2012-07-17 12:01:29

回答

0

這是不是太清楚你問什麼,但如果我正確地收集它,你想要做這樣的事情。請注意,您正在爲變量$ values混合使用數組和字符串邏輯。

$values = array(); 
$curs = new SimpleXMLElement($xml_array); 

foreach($curs as $key => $value) { 

    if (($value->CharCode) == 'USD') { 

     $values[] = $value->Name." - ".$value->Value; 
    } 

    if (($value->CharCode) == 'EUR') { 

     $values[] = $value->Name." - ".$value->Value; 
    } 
} 

$value = implode('.', $values); 

return $value; 

注意:我不確定將這些字符串與「。」合併的用處。我希望你會喜歡\ n之類的東西。