Blame view

application/libs/db/PEAR5.php 1.06 KB
8d65d0ce   andryeyev   init
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  <?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];
      }
  }