Современная, быстрая и удобная система управления сайтом

Set/get-переменные

Часто стоят задачи обеспечить передачу данных в самых разных частях MaxSite CMS. Обычно это делается через глобальную область видимости PHP, что усложняет код. Для решения подобных задач используюся две функции, которые скрыто оперируют глобальным массивом и представляют удобный интерфейс для использования.

В шаблонах set/get-переменные используются для управления некоторыми предопределенными данными. Обычно используется custom/set_val.php. Например:

<?php

// произвольный адрес загрузки библиотеки jQuery
mso_set_val('jquery_url''URL-адрес загрузки jQuery');

// html-атрибуты для тэга HEAD 
mso_set_val('head_section_html_add''lang="ru"');

// css-классы для BODY
mso_set_val('body_class''my-body');

Set/get-переменная может быть задана в любой части сайта, главное, чтобы это было сделано до её использования.

Добавление set/get-переменной

Для этого используется функция mso_set_val().

<?php

mso_set_val
($key$val$val_val null)

$key — ключ (строка)
$val — значение (любой тип)
$val_val — если не равен nullто указывает на возвращаемый ключ массива

Получение set/get-переменной

Для этого используется функция mso_get_val().

<?php

mso_get_val
($key ''$default ''$array false)

$key — ключ (строка)
$default — значениеесли ключа нет 
$array — если равен true
то возвращаемый ключ равен $default

Примеры

Простой вариант использования

<?php

mso_set_val
('myId'777);
$m mso_get_val('myId'0); // указываем значение по умолчанию

pr($m); // выведет 777

Возврат всех ключей массива

<?php

mso_set_val
('users''name1''Вася');
mso_set_val('users''name2''Васечкин');
$m mso_get_val('users');

pr($m);

Array
(
    [
name1] => Вася
    
[name2] => Васечкин
)

Выборочный ключ массива

<?php

mso_set_val
('users''name1''Вася');
mso_set_val('users''name2''Васечкин');
$m mso_get_val('users''name2'true);

pr($m); // Выведет Васечкин