Location: PHPKode > scripts > Secure HTML parser and filter,XSS,CSRF > secure-html-parser-and-filter/test_markup_parser.php
<?php
/*
 * test_markup_parser.php
 *
 * @(#) $Header: /home/mlemos/cvsroot/markupparser/test_markup_parser.php,v 1.7 2009/07/24 08:30:37 mlemos Exp $
 *
 */

	require_once('markup_parser.php');

	$message_file = ((IsSet($_SERVER['argv']) && count($_SERVER['argv'])>1) ? $_SERVER['argv'][1] : 'test/sample/simple.html');
	$markup=new markup_parser_class;

	/*  Set to 1 if the you need to track line numbers of errors or element
	 *  positions
	 */
	$markup->track_lines = 1;

	$parameters=array(
		'File'=>$message_file,

		/* Read a markup from a string instead of a file                  */
		/* 'Data'=>'<html><head><title>My HTML data string</title></head>
					<body><p>My HTML data string</p></body></html>',            */
	);

/*
 * The following lines are for testing purposes.
 * Remove these lines when adapting this example to real applications.
 */
	if(defined('__TEST'))
	{
		if(IsSet($__test_options['parameters']))
			$parameters = $__test_options['parameters'];
		$markup->buffer_length = (IsSet($__test_options['buffer_length']) ? $__test_options['buffer_length'] : 8000);
		$markup->track_lines = (IsSet($__test_options['track_lines']) ? $__test_options['track_lines'] : 0);
	}

	if(($success = $markup->StartParsing($parameters)))
	{
		do
		{
			if(!($success = $markup->Parse($end, $elements)))
				break;
			$te = count($elements);
			for($e = 0; $e < $te; ++$e)
				var_dump($elements[$e]);
		}
		while(!$end);
		if($success)
			$success = $markup->FinishParsing();
	}
	if(!$success)
	{
		echo 'Markup parsing error: '.$markup->error.' at position '.$markup->error_position;
		if($markup->track_lines
		&& $markup->GetPositionLine($markup->error_position, $line, $column))
			echo ' line '.$line.' column '.$column;
		echo "\n";
	}
	for($warning = 0, Reset($markup->warnings); $warning < count($markup->warnings); Next($markup->warnings), $warning++)
	{
		$w = Key($markup->warnings);
		echo 'Warning: ', $markup->warnings[$w], ' at position ', $w;
		if($markup->track_lines
		&& $markup->GetPositionLine($w, $line, $column))
			echo ' line '.$line.' column '.$column;
		echo "\n";
	}
?>
Return current item: Secure HTML parser and filter,XSS,CSRF