pero __get y __set es lo mismo que poner echo $objecto->hola y $objeto->hola = 'hello world' u.u
Ahora tengo esto.
Código PHP:
<?php
class EntityData {
var $properties = array();
function __call($method, $arguments)
{
//if (preg_match_all('/get(.+)/', $method, $test))
if (substr($method, 0, 3) == 'get')
{
//$property = $test[1][0];
$property = substr($method, 3, strlen($method));
if (isset($this->properties[$property]))
{
return $this->properties[$property];
}
}
//if (preg_match_all('/set(.+)/', $method, $test))
if (substr($method, 0, 3) == 'set')
{
//$property = $test[1][0];
$property = substr($method, 3, strlen($method));
if (is_array($arguments))
{
$this->properties[$property] = $arguments[0];
}
else
{
$this->properties[$property] = $arguments;
}
}
return false;
}
}
?>
Aun no me decido si ocupar expresiones regulares o no :D
Saludos y garcias!!!