К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Как лучше хранить структурированные данные?

Гость
0 - 13.09.2012 - 20:30
Есть многомерный массив, даже скорей не многомерный, а древовидный.
Какии образом его лучше сохранять/читать?
Тут либо XML либо еще как, например свое написать.
Кто что подскажет?



Гость
1 - 13.09.2012 - 21:02
Сериализация о чем нибудь говорит ??
Гость
2 - 13.09.2012 - 21:30
Есть еще Json.

Очень интересно узнать твои идеи по поводу "свое написать", у тебя же наверное были какие то мысли, раз дошел до этого.. Мне правда интересно, никогда не сталкивался с такой проблемой и Даже в голову ничего не приходит.. Один способ я нашел в сети, но это извращение в чистом виде..
Гость
3 - 13.09.2012 - 21:33
Прежде всего надо отталкиваться от того, что в массиве и зачем
Гость
4 - 13.09.2012 - 21:42
Цитата:
Сообщение от Гламурный Креведко Посмотреть сообщение
Прежде всего надо отталкиваться от того, что в массиве и зачем
что-то типа
array("abc"=>def,array(1,2,3),array(array("a1"=>ar ray(1,2,3)))) и т.п.

ЗЫ
по идее сериализации должно хватить.
но хотелось бы по-модному: xml кокойты =))
Гость
5 - 13.09.2012 - 22:00
Цитата:
Сообщение от Kuba Посмотреть сообщение
Очень интересно узнать твои идеи по поводу "свое написать",
рекурсивно пропарсить, как же еще.
6 - 13.09.2012 - 22:36
0-Украинские субтитры > че, где хранить собираешься? ниче нипанятно. в базе данных или php. Нужно нормально формировать задачу.
Если нужен просто массив, который в php можно было использовать, то есть вариант в файл записать этот массив с помощью функции var_export() (и естественно других ф-ий) а потом просто инклудить.
Гость
7 - 13.09.2012 - 23:37
Цитата:
Сообщение от Искусственный Интеллект1 Посмотреть сообщение
че, где хранить собираешься? ниче нипанятно. в базе данных или php
для хранения структурированных база данных подходит слабо, не? =)
А в php данные вообще не хранят. Хранят в файлах, если ты конечно не шайтан. =))
Гость
8 - 14.09.2012 - 00:04
mongo подходит не слабо
Гость
9 - 14.09.2012 - 00:07
Не знаю, чо такое mongo, но спасибо, попробую с сериализацией.
Надеюсь, особых косяков там не замечалось.
Гость
10 - 14.09.2012 - 23:56
Насчет сериализации.
А оно не начнет глючить, если, к примеру, данные насохраняю, и прийдется перелазить в следующую версию пхп?
А то будет очень готично. И главное, радостно, если все полетит из-за несоотвецтвий версий и придется писать парсер, чтобы пересохранить =)
Гость
11 - 15.09.2012 - 19:22
Га?
Гость
12 - 15.09.2012 - 19:55
все нормально будет
Гость
13 - 15.09.2012 - 20:53
(на будущее): А как удалять из многомерного массива?
Допустим, $a=array("abc"=>"1","abcd"=>"2","abcde"=>"3");
и надо удалить $a[abcd], то array_splice($a,1,1) вроде не покатит, потому что мы кагбы и не знаем, на какой оно позиции.
unset делать? unset($a[abcd])?
Когда-то сталкивался с его глюком, что оно не удаляло, а делало пустым, но может то было токо под винды и кажеццо еще под php3. Может щас оно и нормально ансеттит. но с тех пор не пользовался.
Гость
14 - 15.09.2012 - 21:07
13-Гавайские субтитры >а проверить не вариант?
unset юзай.
можно еще сделать ф-цию которая циклом будет добавлять нужные значения в новый массив и возвращать его.
и у тебя в примере ассоциативный массив. http://dmitriydenisov.com/php-mysql/...ssivy-php.html
Гость
15 - 15.09.2012 - 23:08
ok
пасибо
Гость
16 - 05.10.2012 - 00:43
А как сделать динамический ансет?
ну вот есть у меня $a=array("abc"=>def,array(1,2,3),array(array("a1"= >ar ray(1,2,3)))) и т.п.

В форме есть текстовое поле $a_kill с последующим unset($a[$_POST[a_kill]]).

Каким образом грохнуть, скажем, значение "abc" в массиве $a, с юзаньем формы?
Гость
17 - 05.10.2012 - 19:18
Да, вопрос трудный.
И есть подозрение, что он еще и невыполнимый. Во всяком случае, на данном уровне развития пхп.
Гость
18 - 12.10.2012 - 23:09
16-Гавайские субтитры >
unset удаляет из массива без перестройки ключей.
Т.е. $array=array(1,2,3) и unset($array[1]) сделает вот такое
$array[0] => 1
$array[2] => 3
для нормального удаления неассоциативных массивов рекомендую array_splice()
Гость
19 - 23.12.2012 - 21:56
Тут возникла надобность сохранить объект в удобоваримом формате и кое-что подправить.
Как это сделать?
Через var_export вроде нормуль, токо, во первых, как его инклудить потом, чтобы присвоить назад, т.к. оно начинается со слова array..... (править каждый раз, что ли, или же если поставить перед этим $a=, то покатит?).
И что делать, если в этом объекте есть бинарные данные.
Вижу, что бинарное нихрена не сбережоццо, если делать просто через var_export($a) и потом писать в файл.
Гость
20 - 14.01.2013 - 00:18
Только RDF. Не пожалеете.
Гость
21 - 14.01.2013 - 17:23
20-p3003 >
та я уже свой rdf наваял, т.к. сериализация оказалась тормозным процессом, да и довольно неудобным для обновления данных. =)


К списку вопросов






Copyright ©, Все права защищены