XMLファイルに名前が存在するかどうかとその回数を数えようとしていますが、誰か助けてもらえますか?私はすでに試したインターネットコードでバージョン35を使用していますが、ほとんどの場合、タグ間のコンテンツではなく、タグのみがカウントされます。
<?php
$xml = <<< XML
<Book>
<Contact>
<Name>An Smith</Name>
</Contact>
<Contact>
<Name>Alex Pepper</Name>
</Contact>
<Contact>
<Name>Tom James</Name>
</Contact>
;
</Book>
XML;
$dom = new DOMDocument;
$dom->loadXml($xml);
// to detect, count if variable NameToFind is present
$NameToFind="Alex Pepper";
// Missing code
echo "$NameToFind is x times present in the XML ";
すべてのコメントでいくつかの試みを行い、最後にこれが私が必要とした作業コードでした:
$xml=simplexml_load_file('book.xml');
$nodes= $xml->xpath("//Book/Contact[contains(.,'$NameToFind')]");
$count = count($nodes);