Класс разработан для преобразования php-переменных и массивов в строку.
Синтаксис: toStr( $data='', $name='', $associations=array() )
$data - массив или переменная
$name - имя переменной которая будет содержать данные $data
$associations - массив ассоциций для ключей, применяется в редких случаях о которых можно почитать ниже
Пример:
имеем массив в пхп-скрипте:
$my_array = array('очень','интересный'=>'полезный','класс');
нужно записать массив в таком же виде в нужный файл, который можно подключать с помощью include()
$str_array = $GLOBALS["phpToStr"]->toStr($my_array, 'my_name');
помним, что записать в файл очень удобно с помощью функции write_
write_( '<?php '. $str_array .' ?>', 'dir/file.php');
теперь, в нужный момент получаем доступ к массиву:
include('dir/file.php');
проверим правильность сохранения:
print_r($my_name);
Таким образом можно сохранять в файл сразу множество массивов:
$cache = '<?php '.
$GLOBALS["phpToStr"]->toStr($my_array, 'this->my_name').
$GLOBALS["phpToStr"]->toStr($this->base_id, 'this->base_id', $associations).
$GLOBALS["phpToStr"]->toStr($this->index_id, 'this->index_id').' ?>';
write_( $cache, 'dir/file.php');
Примечание о $associations:
Применяется в случаях, когда файл в который будет помещен массив $data нужно сделать как можно минимальным по размеру.
Делается это с помощью замены имен ключей на короткие названия.
К примеру у Вас есть название ключа image_file_path, представим что у нас 5 000 таких имен ключей, чтобы не писать в файл image_file_path, можно заменить имя ключа например на цифру 1. Для этого заведем массив следующего вида:
$associations=array('image_file_path'=1);
или
$associations['image_file_path'] = 1;
Таким образом в файл будет записано 5 000 раз единицы вместо image_file_path и в результате мы получим файл в 5 000 раз меньшего размера, что конечно повлияет на его загрузку с помощью конструкции include()