{% else-1 %}
Iamweb * 1.15
(1 фев 2013, 18:00) (0/0) [0]
Тема закрыта для обсуждения! *
Iamweb * 1.15
(1 фев 2013, 18:00) (0/0) [0]
Все не надо, ошибку нашел *
Iamweb * 1.15
(1 фев 2013, 17:51) (0/0) [0]
Что то не получается, вот тут написал но, как обычный класс работает, а как arrayAccess нет

<?php
/*Глобальный контейнер, используется вместо глобальных переменных, более безапасен и удобен*/

/*
*Registry
*/

class Registry implements ArrayAccess{
/*Контейнер*/
private $vars=array();

/*save cont
Удалён array;
Удалён array;
save global*/
function set($key, $var){
if(isset($this->vars[$key])==true){
/*error*/
throw new Expection(\'Unable to set var `\'.$key.\'`. Already set.\');
}
/*save*/
return $this->vars[$key]=$var;
}

/*get cont
Удалён array key
get global*/
function get($key){
if(isset($this->vars[$key])==false){
return null;
}
return $this->vars[$key];
}

/*unset
key->key array unset
unset key*/
function uset($key){
if(isset($this->vars[$key])==false){
/*error*/
return null;
}
uset($this->vars[$key]);
}

/*----function arrayAccess*/
function offsetSet($offset, $value){
$this->set($offset, $value);
}
function offsetGet($offset){
$this->get($offset);
}
function offsetUnset($offset){
$this->unset($offset);
}
function offsetExists($offset){}
/*the end function arrayAccess*/
}
?>

вот так работает
<?php
$registry=new Registry;
$registry->set(\'name\', \'profiwm\');
echo $registry->get(\'name\');
?>

так нет
<?php
$registry= new Registry;
$registry[\'name\']=\'profiwm\';
echo $registry[\'name\'];
?>
  • 1 из 1