Google から返された次の DOMNodeList オブジェクトがあり、それを解析する必要があります。
私はそれを DOMElement オブジェクトの配列に解析しています。警告ごとに 1 つあります。
$new_product = _GSC_AtomParser::parse($resp->body);
$elements = $new_product->getWarnings();
$warnings = array();
foreach ($elements as $element):
$warnings[] = $element;
endforeach;
次に、これらの DOMElement オブジェクトを解析して警告を取得する必要があります。
[0] => DOMElement Object
(
[tagName] => sc:warning
[schemaTypeInfo] =>
[nodeName] => sc:warning
[nodeValue] => validation/missing_recommendedShoppinggoogle_product_categoryWe recommend including this attribute.
[nodeType] => 1
[parentNode] => (object value omitted)
[childNodes] => (object value omitted)
[firstChild] => (object value omitted)
[lastChild] => (object value omitted)
[previousSibling] =>
[nextSibling] => (object value omitted)
[attributes] => (object value omitted)
[ownerDocument] => (object value omitted)
[namespaceURI] => http://schemas.google.com/structuredcontent/2009
[prefix] => sc
[localName] => warning
[baseURI] => /home/digit106/dev/public_html/manager/
[textContent] => validation/missing_recommendedShoppinggoogle_product_categoryWe recommend including this attribute.
)
これを次のように配列にフォーマットしたい:
[warnings] => Array
(
[0] => Array
(
[domain] => Shopping
[code] => validation/missing_recommended
[location] => google_product_category
[internalReason] => We recommend including this attribute.
)
)
しかし、そのデータはすべて、nodeValue または textContent のいずれかにネストされているようです。
どうやってこれを解析するのですか?