PhpSnip.com

User Stats

tagtrack.php

my HTML parser class uses this class to check the validity of nested tags. Parser.php needs this class to work.

Info

 Download  View Source (print view)
 Rating : 4.7  Views : 450

Source Code ( 48 lines )

<?

$tag_stack = array();

class TagTrack
  {
        var $label;
        var $top_level;
        var $follower;

        function TagTrack ($label, $top_level = 1, $followers = 0)
          {
                $this->label = $label;
                $this->top_level = $top_level;
                $this->followers = $followers;
          }

        function VerifyTag ($closing)
          {
                global $tag_stack;

                $prev=end($tag_stack);
		if ($closing)
		  {
			if ($this->label = $prev->label)
			  {
				array_pop ($tag_stack);
				return ($this->label);
			  }
			else return (0);
		  }

		if ($prev && $pf = $prev->followers)
		  {
			if (is_array ($pf) && !in_array ($this->label, $pf)) 
				return (0);
			elseif ($pf == "*" && !$this->top_level)
				return (0);
		  }

		if ($this->followers)
			array_push ($tag_stack, $this);

		return ($this->label);
          }
  }

?>

Search

Subscribe

  Rss Feeds

Sponsors

Advertise