Здравствуйте.
Нужно сформировать из массива в SHELL/bash строку в json-формате.
a:5:{s:5:"width";i:200;s:6:"height";i:180;s:4:"file";s:17:"2014/07/grunt.jpg";s:5:"sizes";a:1:{s:9:"thumbnail";a:4:{s:4:"file";s:17:"grunt-150x150.jpg";s:5:"width";i:150;s:6:"height";i:150;s:9:"mime-type";s:10:"image/jpeg";}}s:10:"image_meta";a:10:{s:8:"aperture";i:0;s:6:"credit";s:0:"";s:6:"camera";s:0:"";s:7:"caption";s:0:"";s:17:"created_timestamp";i:0;s:9:"copyright";s:0:"";s:12:"focal_length";i:0;s:3:"iso";i:0;s:13:"shutter_speed";i:0;s:5:"title";s:0:"";}}
В читаемом виде:a:5:{
s:5:"width";
i:200;
s:6:"height";
i:180;
s:4:"file";
s:17:"2014/07/grunt.jpg";
s:5:"sizes";
a:1:{
s:9:"thumbnail";
a:4:
{
s:4:"file";
s:17:"grunt-150x150.jpg";
s:5:"width";
i:150;
s:6:"height";
i:150;
s:9:"mime-type";
s:10:"image/jpeg";
}
}
s:10:"image_meta";
a:10:{
s:8:"aperture";
i:0;
s:6:"credit";
s:0:"";
s:6:"camera";
s:0:"";
s:7:"caption";
s:0:"";
s:17:"created_timestamp";
i:0;
s:9:"copyright";
s:0:"";
s:12:"focal_length";
i:0;
s:3:"iso";
i:0;
s:13:"shutter_speed";
i:0;
s:5:"title";
s:0:"";
}
}
Формировать его буду в shell. Далее записывать в базу (стрОки типом text).
Может есть утилиты типа xpath, hxselect?
(только одностороннее кодирование нужно: в json)
Пользователь решил продолжить мысль 15 Июля 2014, 07:09:38:
Наверное вопрос снимаю.
Всё же наглядней будет забивать переменные в сей шаблон. Потому как структура всегда одинаковая.
Затем чистку пробелов SEDом.
Главное что длИны стрингов для JSON будут создаваться автоматом:
Для формирования строки:
s:17:"2014/07/grunt.jpg";
name_picture='2014/07/grunt.jpg'
content=`cat << EOTEMPL
s:${#name_picture}:"$name_picture";
EOTEMPL
`
Закрыто.