Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PHP Extension) Demonstrate XML SearchForTag2Demonstrates how to use SearchForTag2.
<?php // The version number (9_5_0) should match version of the Chilkat extension used, omitting the micro-version number. // For example, if using Chilkat v9.5.0.48, then include as shown here: include("chilkat_9_5_0.php"); $xml = new CkXml(); // 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 CkXml $xmlSearch = $xml->GetRoot(); // afterPtr is a CkXml $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 CkXml $pTemp = $afterPtr; // afterPtr is a CkXml $afterPtr = $xmlSearch; $pTemp->GetRoot2(); // xmlSearch is a CkXml $xmlSearch = $pTemp; } print '----' . "\n"; // A better way: $sbState = new CkStringBuilder(); $i = 0; while ($xml->NextInTraversal2($sbState) != false) { if ($xml->TagEquals('testchild1') == true) { print $i . ': ' . $xml->content() . "\n"; $i = $i + 1; } } $xml->GetRoot2(); ?> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.