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
(Perl) XML Sort by ContentDemonstrates the SortByContent method. The input XML, available at http://www.chilkatsoft.com/data/fruitSort2.xml, is this: <root> <fruits> <apples> <apple>fuji</apple> <apple>gala</apple> <apple>granny smith</apple> <apple>honeycrisp</apple> <apple>mcintosh</apple> </apples> <fruit>banana</fruit> <fruit>blackberry</fruit> <fruit>blueberry</fruit> <fruit>orange</fruit> <fruit>pear</fruit> </fruits> </root>
use chilkat(); $xml = chilkat::CkXml->new(); # The sample input XML is available at http://www.chilkatsoft.com/data/fruitSort2.xml $success = $xml->LoadXmlFile("fruitSort2.xml"); if ($success != 1) { print $xml->lastErrorText() . "\r\n"; exit; } # Sort the direct children under the "fruits" node by tag: # xSortRoot is a Xml $xSortRoot = $xml->FindChild("fruits"); # Sort in ascending order. $bAscending = 1; $xSortRoot->SortByContent($bAscending); # Show the result: print $xml->getXml() . "\r\n"; # Note: The "apples" node contains child nodes, but its # text content is 0-length (empty). Therefore, when sorting in # ascending order, it will be positioned before the direct # children containing non-empty content. # <root> # <fruits> # <apples> # <apple>granny smith</apple> # <apple>gala</apple> # <apple>fuji</apple> # <apple>mcintosh</apple> # <apple>honeycrisp</apple> # </apples> # <fruit>banana</fruit> # <fruit>blackberry</fruit> # <fruit>blueberry</fruit> # <fruit>orange</fruit> # <fruit>pear</fruit> # </fruits> # </root> # Sort the direct children under the "apples" node: $success = $xSortRoot->FindChild2("apples"); $xSortRoot->SortByContent($bAscending); print $xml->getXml() . "\r\n"; # <root> # <fruits> # <apples> # <apple>fuji</apple> # <apple>gala</apple> # <apple>granny smith</apple> # <apple>honeycrisp</apple> # <apple>mcintosh</apple> # </apples> # <fruit>banana</fruit> # <fruit>blackberry</fruit> # <fruit>blueberry</fruit> # <fruit>orange</fruit> # <fruit>pear</fruit> # </fruits> # </root> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.