SimpleXMLElement オブジェクト内の値へのアクセス
PHP で XML データを操作する場合、SimpleXMLElement クラスを使用すると、XML ノードからの値の取得が簡素化されます。ただし、目的の結果を得るために XML ノードを文字列にキャストする必要がある状況に遭遇することがあります。
次の例を考えてみましょう:
<?php $url = "http://ws.geonames.org/findNearbyPostalCodes?country=pl&placename="; $url .= rawurlencode($city[$i]); $xml = simplexml_load_file($url); echo $url."\n"; $cityCode[] = array( 'city' => $city[$i], 'lat' => $xml->code[0]->lat, 'lng' => $xml->code[0]->lng ); print_r($xml); ?>
この例では、SimpleXML オブジェクト解析された XML データを表します。ただし、最初のコード ノードの lat プロパティにアクセスしようとすると、予期した数値ではなくオブジェクトが表示されます。
値を文字列として取得するには、SimpleXML オブジェクトを明示的にキャストする必要があります。 (文字列) 演算子を使用した文字列:
$value = (string) $xml->code[0]->lat;
これにより、SimpleXML オブジェクトがテキスト表現に効果的に変換され、目的の内容が明らかになります。 value:
$value = "52.25";
必要に応じて SimpleXML オブジェクトを文字列にキャストする必要性を理解することで、PHP で XML データから値を効率的に抽出して操作できます。
以上がPHP で SimpleXMLElement オブジェクトから数値を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。