Etiketi dönemine XML / PHP Erişme

2 Cevap php

Burada hızlı acemi soru, nasıl erişmek totalResults? Yok

XML

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">
  <opensearch:totalResults>1</opensearch:totalResults>
  <posts>
    <post>
      <score>10</score>
    </post>
  </posts>
</OpenSearchDescription>

Erişmek için score bunu yapardı:

PHP

$xmlObj = simplexml_load_string($theXMLabove);
echo $xmlObj->posts->post[0]->score;

Ama bu iş hiçbiri totalResults:

echo $xmlObj->opensearch:totalResults;
echo $xmlObj->opensearch->totalResults;

Böyle bir topal soru soran için özür dilerim ...

PHP ile XML çapraz nasıl Dokümantasyon de takdir ediyor :)

Teşekkürler!

2 Cevap

ad ekledi ile bunu yapabilirsiniz:

$opensearch = $xmlObj->children('http://a9.com/-/spec/opensearch/1.1/');
echo $opensearch->totalResult;

deneyin: $xmlObj->children('opensearch');

Im değil emin çünkü opensearch namespace bir xmlns olarak tanımlı değil yayınlanmıştır ne olsa çalışacak. Gerçi bir fark olmayabilir - emin değil im ive SimpleXML ns ns ile uğraşmak zorunda her zaman açıkça tanımlanmış çünkü.