Revision: 8507
http://phpwiki.svn.sourceforge.net/phpwiki/?rev=8507&view=rev
Author: vargenau
Date: 2012-11-21 10:34:31 +0000 (Wed, 21 Nov 2012)
Log Message:
-----------
Add PEAR5.php
Added Paths:
-----------
trunk/lib/pear/PEAR5.php
Added: trunk/lib/pear/PEAR5.php
===================================================================
--- trunk/lib/pear/PEAR5.php (rev 0)
+++ trunk/lib/pear/PEAR5.php 2012-11-21 10:34:31 UTC (rev 8507)
@@ -0,0 +1,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];
+ }
+}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|