<!DOCTYPE html>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<meta name="generator" content="ApiGen 2.8.0" />

	<title>Package log4php\helpers | Apache log4php</title>

	<script type="text/javascript" src="resources/combined.js?238209907"></script>
	<script type="text/javascript" src="elementlist.js?4055067042"></script>
	<link rel="stylesheet" type="text/css" media="all" href="resources/style.css?3505392360" />

	<script type="text/javascript">
		var _gaq = _gaq || [];
		_gaq.push(['_setAccount', "UA-26177991-1"]);
		_gaq.push(['_trackPageview']);

		(function() {
			var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
			ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
			var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
		})();
	</script>
</head>

<body>
<div id="left">
	<div id="menu">
		<a href="index.html" title="Overview"><span>Overview</span></a>


		<div id="groups">
			<h3>Packages</h3>
			<ul>
				<li class="active"><a href="package-log4php.html">log4php<span></span></a>
						<ul>
				<li><a href="package-log4php.appenders.html">appenders</a>
						</li>
				<li><a href="package-log4php.configurators.html">configurators</a>
						</li>
				<li><a href="package-log4php.filters.html">filters</a>
						</li>
				<li class="active"><a href="package-log4php.helpers.html">helpers</a>
						</li>
				<li><a href="package-log4php.layouts.html">layouts</a>
						</li>
				<li><a href="package-log4php.pattern.html">pattern</a>
						</li>
				<li><a href="package-log4php.renderers.html">renderers</a>
						</li>
							</ul></li>
			</ul>
		</div>

		<hr />


		<div id="elements">
			<h3>Classes</h3>
			<ul>
				<li><a href="class-LoggerFormattingInfo.html">LoggerFormattingInfo</a></li>
				<li><a href="class-LoggerOptionConverter.html">LoggerOptionConverter</a></li>
				<li><a href="class-LoggerPatternConverter.html">LoggerPatternConverter</a></li>
				<li><a href="class-LoggerPatternParser.html">LoggerPatternParser</a></li>
				<li><a href="class-LoggerUtils.html">LoggerUtils</a></li>
			</ul>





		</div>
	</div>
</div>

<div id="splitter"></div>

<div id="right">
<div id="rightInner">
	<form id="search">
		<input type="hidden" name="cx" value="" />
		<input type="hidden" name="ie" value="UTF-8" />
		<input type="text" name="q" class="text" />
		<input type="submit" value="Search" />
	</form>

	<div id="navigation">
		<ul>
			<li>
				<a href="index.html" title="Overview"><span>Overview</span></a>
			</li>
			<li class="active">
<span>Package</span>			</li>
			<li>
<span>Class</span>			</li>
		</ul>
		<ul>
			<li>
				<a href="tree.html" title="Tree view of classes, interfaces, traits and exceptions"><span>Tree</span></a>
			</li>
		</ul>
		<ul>
		</ul>
	</div>

<div id="content" class="package">
	<h1>Package <a href="package-log4php.html">log4php</a>\helpers</h1>



<table class="summary" id="classes">
<caption>Classes summary</caption>
<tr>
	<td class="name"><a href="class-LoggerFormattingInfo.html">LoggerFormattingInfo</a></td>
	<td>This class encapsulates the information obtained when parsing formatting
modifiers in conversion modifiers.</td>
</tr>
<tr>
	<td class="name"><a href="class-LoggerOptionConverter.html">LoggerOptionConverter</a></td>
	<td>A convenience class to convert property values to specific types.</td>
</tr>
<tr>
	<td class="name"><a href="class-LoggerPatternConverter.html">LoggerPatternConverter</a></td>
	<td>LoggerPatternConverter is an abstract class that provides the formatting
functionality that derived classes need.</td>
</tr>
<tr>
	<td class="name"><a href="class-LoggerPatternParser.html">LoggerPatternParser</a></td>
	<td>Most of the work of the LoggerPatternLayout class is delegated to the
<code><a href="class-LoggerPatternParser.html">LoggerPatternParser</a></code> class.</td>
</tr>
<tr>
	<td class="name"><a href="class-LoggerUtils.html">LoggerUtils</a></td>
	<td>Contains various helper methods.</td>
</tr>
</table>





</div>

	<div id="footer">
		Apache log4php API documentation generated by <a href="http://apigen.org">ApiGen 2.8.0</a>
	</div>
</div>
</div>
</body>
</html>
