[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Защищенные глобальные переменные
Dingo
/**
* Глобальные переменные реализованные с помощью функции
*/

function Globals()
{
static $property;
$args = func_get_args();
switch ($args[0])
{
case 'Set':
if (!empty($args[1]))
$property[$args[1]] = $args[2];
break;
case 'Get':
return $property[$args[1]];
break;
case 'SetArray':
if (is_array($args[1]))
$property = array_merge($property, $args[1]);
break;
case 'GetArray':
return $property;
break;
}
}


/**
*
@param string $name
*
@param mixed $value
*/

function Set($name,$value)
{
Globals('Set', $name , $value);
}

/**
*
@param string $name
*
@return mixed
*/

function Get($name)
{
return Globals('Get',$name);
}

/**
*
@param array $array
*
@return mixed
*/

function SetArray($array)
{
Globals ('SetArray', $array);
}

/**
*
@return array
*/

function GetArray()
{
return Globals ('GetArray');
}

Можно также глобальные переменные реализовать через паттерн Singleton, но это уже другая история smile.gif



Спустя 3 минуты, 31 секунда (7.10.2010 - 17:30) Dingo написал(а):
Ах да применение
set('Hello','Привет');
echo get('Hello'); //Привет
Globals('Set','Fuck','Yes');
echo Globals('Get','Fuck');//Yes
$array = array(
'Mother' => Мама,
'Father' => Папа
);
SetArray($array);
print_r(GetArray());
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.