Source for file Context.php
Documentation is available at Context.php
* Registry object that contains information about the current context.
* @warning Is a bit buggy when variables are set to null: it thinks
* they don't exist! So use false instead, please.
* @note Since the variables Context deals with may not be objects,
* references are very important here! Do not remove!
* Private array that stores the references.
private $_storage =
array();
* Registers a variable into the context.
* @param $name String name
* @param $ref Reference to variable to be registered
public function register($name, &$ref) {
if (isset
($this->_storage[$name])) {
trigger_error("Name $name produces collision, cannot re-register",
$this->_storage[$name] =
& $ref;
* Retrieves a variable reference from the context.
* @param $name String name
* @param $ignore_error Boolean whether or not to ignore error
public function &get($name, $ignore_error =
false) {
if (!isset
($this->_storage[$name])) {
trigger_error("Attempted to retrieve non-existent variable $name",
$var =
null; // so we can return by reference
return $this->_storage[$name];
* Destorys a variable in the context.
* @param $name String name
if (!isset
($this->_storage[$name])) {
trigger_error("Attempted to destroy non-existent variable $name",
unset
($this->_storage[$name]);
* Checks whether or not the variable exists.
* @param $name String name
public function exists($name) {
return isset
($this->_storage[$name]);
* Loads a series of variables from an associative array
* @param $context_array Assoc array of variables to load
foreach ($context_array as $key =>
$discard) {
$this->register($key, $context_array[$key]);
Documentation generated on Thu, 19 Jun 2008 18:48:57 -0400 by phpDocumentor 1.4.2