2012-02-21 76 views
0

私は2つの都市IDを含む単純なXML文書を持っています。XML要素を反復し、要素を配列にプッシュ

<?xml version="1.0" encoding="ISO-8859-1"?> 
<config> 
    <city> 
     <id>London</id> 
    </city> 
    <city> 
     <id>New York</id> 
    </city> 
</config> 

XMLを反復するとき、私は最初の都市IDだけを取り上げることができます。ロンドン。私は私のウェブサイトの他の場所で使用される文字列に$cityIdをキャストしてい

// Array ([0] => London) 

<?php 
$configFile = 'cityConfig.xml'; 

function getCityId($configFile) { 

    $xml = new SimpleXmlElement(file_get_contents("cityConfig.xml")); 

    $cities = array(); 

    foreach ($xml->city->id as $cityId) { 
     $cityId = (string) $cityId; 
     array_push($cities, $cityId); 
    } 

    return $cities; 
} 

print_r(getCityId($configFile)); 
?> 

<?php 

上からの出力。

私は間違っていますか?

ありがとうございます。

+1

私はあなたが '$シティ - > id'を使用し、その後、$ city'として' $ XML->街を反復処理する必要があると仮定します – dmitry

答えて

1
foreach ($xml->city->id as $cityId) 

は次のようになります。

foreach ($xml->city as $city) { 
    $cityId = $city->id; 
    ... 
} 
関連する問題