<?php
array('Code'=>'root','ParentID'=>null), array('Code'=>'a1','ParentID'=>'root'), array('Code'=>'a2','ParentID'=>'root'), array('Code'=>'a1.1','ParentID'=>'a1'), array('Code'=>'a1.2','ParentID'=>'a1'), array('Code'=>'a2.1','ParentID'=>'a2'), );
function FoundSub($parent) {
global $categories;
$c=0;
foreach( $categories as $key ) {
if( $key['ParentID'] == $parent ) {
$c+=1+FoundSub($key['Code']);
}
} // end
return $c;
} // end function
echo FoundSub('root')."\n";
echo FoundSub('a1')."\n";
echo FoundSub('a2')."\n";
PD9waHAKCiRjYXRlZ29yaWVzPWFycmF5KAoJYXJyYXkoJ0NvZGUnPT4ncm9vdCcsJ1BhcmVudElEJz0+bnVsbCksCglhcnJheSgnQ29kZSc9PidhMScsJ1BhcmVudElEJz0+J3Jvb3QnKSwKCWFycmF5KCdDb2RlJz0+J2EyJywnUGFyZW50SUQnPT4ncm9vdCcpLAoJYXJyYXkoJ0NvZGUnPT4nYTEuMScsJ1BhcmVudElEJz0+J2ExJyksCglhcnJheSgnQ29kZSc9PidhMS4yJywnUGFyZW50SUQnPT4nYTEnKSwKCWFycmF5KCdDb2RlJz0+J2EyLjEnLCdQYXJlbnRJRCc9PidhMicpLAoJKTsKIApmdW5jdGlvbiBGb3VuZFN1YigkcGFyZW50KSB7CglnbG9iYWwgJGNhdGVnb3JpZXM7CgkkYz0wOwoJIAoJZm9yZWFjaCggJGNhdGVnb3JpZXMgYXMgJGtleSApIHsKCSAKCQlpZiggJGtleVsnUGFyZW50SUQnXSA9PSAkcGFyZW50ICkgewoJCSAKCQkJJGMrPTErRm91bmRTdWIoJGtleVsnQ29kZSddKTsKCQkgCgkJfQoJIAoJfSAvLyBlbmQKCXJldHVybiAkYzsKfSAvLyBlbmQgZnVuY3Rpb24KIAplY2hvIEZvdW5kU3ViKCdyb290JykuIlxuIjsKZWNobyBGb3VuZFN1YignYTEnKS4iXG4iOwplY2hvIEZvdW5kU3ViKCdhMicpLiJcbiI7