Package IO
Interfaces
Interfaces
Classes
class DBFactory | This factory provides the <code>DBConnection</code> and the <code>SQLQuerier</code> for the right sgbd.
This factory provides the <code>DBConnection</code> and the <code>SQLQuerier</code> for the right sgbd.
Interfaces
Interfaces
Classes
This data store is not already available, the APC PHP extension must be enabled for you yo use it.
This data store is not very efficient but is the only one which has an infinite life span when APC is not available.
Interfaces
Classes
This class manages config loading and saving. It makes a two-level lazy loading: <ul> <li>A top-level cache which avoids loading a data if it has already been done since the beginning of the current page generation. This cache has a short life span: it's flushed as of the PHP interpreter reaches the end of the page generation.</li> <li>A filesystem or shared RAM cache to avoid querying the database many times to obtain the same value.
This exception is raised when a configuration entry is load whereas it doesn't exists in the database.
Interfaces
Classes
This exception is raised when you are asking a cache entry that doesn't exist.
This class manages cache. It makes a two-level lazy loading: <ul> <li>A top-level cache which avoids loading a data if it has already been done since the beginning of the current page generation. This cache has a short life span: it's flushed as of the PHP interpreter reaches the end of the page generation.</li> <li>A filesystem or shared RAM (via APC) cache to avoid querying the database every time to obtain the same value.
Interfaces
This class represents a PHPBoost template. Templates are used to generate text which have a common structure. You just have to write your text with tags at the place you want to insert values and assign values in the objet, when you will display them, the tags will be replaced by the corresponding value.
Classes
This class is a default implementation of the Template interface using a TemplateLoader, a TemplateData and a TemplateParser.
This class enables you to handle a template whose input is not a file but directly a string.
Interfaces
Classes
template = (variableExpression | expression | condition | loop | include | text)* variableExpression = "{", variable, "}" expression = "${", expressionContent, "}" condition = "# IF ", "NOT "?, expression, "#", template, ("# ELSE #, template)?, "# ENDIF #" loop = "# START ", expression, " #", template, "# END (?:name)? #" include = "# INCLUDE ", name, " #" text = .+ expressionContent = array | function | variable | constant function = "\(\w+::\)?\w+\(", parameters, "\)" parameters = expressionContent | (expressionContent, (",", expressionContent)+) variable = simpleVar | loopVar constant = "'.+'" | [0-9]+ | array array = "array(", arrayContent, ")" arrayContent = arrayElement | (arrayElement, (",", arrayElement)+) arrayElement = expressionContent | ("'\w+'\s*=>\s*", expressionContent) simpleVar = "\w+" loopVar = "(\w+\.)+\w+"
Interfaces
Interfaces
Classes
This loader is to use when you load a template whose source is directly a PHP string and not a file. It supports caching and saves cache files in the /cache/tpl directory, using a md5 hash to distinguish eache string input.
This loader is the most used. It takes a file identifier as input. This identifier corresponds to a file that can be different from the user's theme. In fact, when it loads a template, its looks for it at several places. For a module template, it can be the default one which is in the /module/templates directory, but if the file is specialized by the theme, it loads it from the theme directory. All that is explained in the {@link FileTemplate} class description.
This loader is a very simple one. Its input is a string containing the template source.
Interfaces
This interface describes data which are assigned to a template. There are two types of data: <ul> <li>Variables: there are string that are directly displayed</li> <li>Templates: you can embed a template in another one. When a subtemplate is displayed, it's parsed using its own data and the result is inserted where the subtemplate is embedded.</li> </ul> A template contains global variables which are available in the whole template and local variable which are only defined into a loop. To define a loop, you just have to use assign_block_vars with the same loop identifier for each loop iteration. Loops can be nested and embed both variables and subtemplates.