<?php
/**
* @author Patrick Rennings
* @copyright 2010
*/
class TestClass {
public static $StatVar;
public $DynVar;
public static function StatSet ( $var = NULL )
{
if ( is_string ( $var ) )
{
self::$StatVar = $var;
}
}
public function DynSet ( $var = NULL )
{
if ( is_string ( $var ) )
{
$this->DynVar = $var;
}
}
public function ReturnResults ( )
{
return self::$StatVar . ' <br /> ' $this->DynVar;
}
}
TestClass::$StatVar = ' Static variable ';
$Class1 = new TestClass;
$Class1->DynSet( 'Dynamic variable' );
# Result: Static variable <br /> Dynamic variable
$Class1->ReturnResults();
$Class2 = new TestClass;
$Class2->DynSet( 'Dynamic variable second edition' );
# Result: Static variable <br /> Dynamic variable second edition
$Class2->ReturnResults();
$Class3 = new TestClass;
# Result: Static variable <br />
$Class3->ReturnResults();
TestClass::$StatVar = ' Static Variable second edition ';
$class4 = new TestClass;
$Class4->DynSet( 'Dynamic variable thirth edition' );
# Result: Static variable second edition <br /> Dynamic variable thirth edition
$Class4->ReturnResults();
?>
Versie 2:
<?php
/**
* @author Patrick Rennings
* @copyright 2010
*/
Class TestClass
{
public static $StatVar;
public $StatVar;
public function __SET ( $var = NULL, $spec = NULL )
{
if ( is_string ( $var ) )
{
if ( $spec == 'static' )
{
$this->setstatic ( $var );
}
else
{
$this->setdyn ( $var );
}
}
}
private function SetStatic ( $var = NULL )
{
self::$StatVar = $var;
return;
}
private function SetDyn ( $var = NULL )
{
$this->DynVar = $var;
}
public function __GET ( )
{
return $this->DynVar . ' <br /> ' . self:$StatVar;
}
}
?>
Geprobeerd met __GET en __SET te werken

Help 












