PHP ActiveX
PHP ActiveX
Demonstrate XML SearchForTag2
Demonstrates how to use SearchForTag2.Chilkat PHP ActiveX Downloads
<?php
$success = 0;
$xml = new COM("Chilkat.Xml");
// Load the following XML:
// <Test>
// <testchild1>
// test
// </testchild1>
// <testchild1>
// test1
// </testchild1>
// <testchild1>
// test2
// </testchild1>
// <testchild1>
// test3
// </testchild1>
// <testchild1>
// test4
// </testchild1>
// <testchild1>
// test5
// </testchild1>
// <testchild1>
// test6
// </testchild1>
// </Test>
$success = $xml->LoadXml('<Test><testchild1>test</testchild1><testchild1>test1</testchild1><testchild1>test2</testchild1><testchild1>test3</testchild1><testchild1>test4</testchild1><testchild1>test5</testchild1><testchild1>test6</testchild1></Test>');
$i = 0;
// xmlSearch is a Chilkat.Xml
$xmlSearch = $xml->GetRoot();
// afterPtr is a Chilkat.Xml
$afterPtr = $xml->GetRoot();
// Alway begin the search from the root.
while ($xmlSearch->SearchForTag2($afterPtr,'testchild1')) {
// If successful, xmlSearch now points to the found element.
$i = $i + 1;
// Set afterPtr = xmlSearch (so we find the next match after the one we just found)
// Rest xmlSearch to the root of the XML tree to be searched.
print $i . ': ' . $xmlSearch->Content . "\n";
// pTemp is a Chilkat.Xml
$pTemp = $afterPtr;
// afterPtr is a Chilkat.Xml
$afterPtr = $xmlSearch;
$pTemp->GetRoot2();
// xmlSearch is a Chilkat.Xml
$xmlSearch = $pTemp;
}
print '----' . "\n";
// A better way:
$sbState = new COM("Chilkat.StringBuilder");
$i = 0;
while ($xml->NextInTraversal2($sbState) != 0) {
if ($xml->TagEquals('testchild1') == 1) {
print $i . ': ' . $xml->Content . "\n";
$i = $i + 1;
}
}
$xml->GetRoot2();
?>