forked from GNUsocial/gnu-social
		
	
		
			
				
	
	
		
			33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
/**
 | 
						|
 * This is only meant for PHP 5 to get rid of certain strict warning
 | 
						|
 * that doesn't get hidden since it's in the shutdown function
 | 
						|
 */
 | 
						|
class PEAR5
 | 
						|
{
 | 
						|
    /**
 | 
						|
    * If you have a class that's mostly/entirely static, and you need static
 | 
						|
    * properties, you can use this method to simulate them. Eg. in your method(s)
 | 
						|
    * do this: $myVar = &PEAR5::getStaticProperty('myclass', 'myVar');
 | 
						|
    * You MUST use a reference, or they will not persist!
 | 
						|
    *
 | 
						|
    * @access public
 | 
						|
    * @param  string $class  The calling classname, to prevent clashes
 | 
						|
    * @param  string $var    The variable to retrieve.
 | 
						|
    * @return mixed   A reference to the variable. If not set it will be
 | 
						|
    *                 auto initialised to NULL.
 | 
						|
    */
 | 
						|
    static function &getStaticProperty($class, $var)
 | 
						|
    {
 | 
						|
        static $properties;
 | 
						|
        if (!isset($properties[$class])) {
 | 
						|
            $properties[$class] = array();
 | 
						|
        }
 | 
						|
 | 
						|
        if (!array_key_exists($var, $properties[$class])) {
 | 
						|
            $properties[$class][$var] = null;
 | 
						|
        }
 | 
						|
 | 
						|
        return $properties[$class][$var];
 | 
						|
    }
 | 
						|
} |