Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Структурный файл в php   Найти похожие ветки 

 
Кто б сомневался ©   (2010-04-12 00:37) [0]

Я что то не пойму, точнее не найду, как в php можно создать структурный бинарный файл?
нужно создать файл из записей типа

Trec = packed record
 MyStr1: string;  // Длина фиксированная
 MyStr2: string;  // Длина фиксированная
 Num: integer;
end;  

Если такого нет, то как можно сохранить подобные данные в файле? Их потом нужно будет искать и заменять (структуры) не переписывая файл. Поэтому размер структуры должен быть фиксированный.
Подскажите pls кто знает.


 
silver ©   (2010-04-12 00:39) [1]

Num - наверное еще и номер записи
да.. а тут про воид спорят


 
Кто б сомневался ©   (2010-04-12 00:42) [2]


> silver ©   (12.04.10 00:39) [1]


Num произвольное число.
Знаю что можно в ini файл писать, но это медленно будет работать.
Или может лучше сделать win cgi exe и потом вызывать из php?


 
silver ©   (2010-04-12 00:49) [3]

mysql, не?
если нет, то по какой причине?


 
silver ©   (2010-04-12 00:50) [4]

есть serialize, но не знаю, подойдет ли тут


 
Кто б сомневался ©   (2010-04-12 00:51) [5]


> silver ©   (12.04.10 00:49) [3]


Нет. Т.к. там особо нечего хранить. Это будет временный файл.


 
silver ©   (2010-04-12 00:54) [6]

тогда самому писать
а может и есть в библиотеках
но писать там строк 50


 
palva ©   (2010-04-12 01:01) [7]

Упаковывать в строку и выводить строку в файл.
Функции pack, unpack


 
Kerk ©   (2010-04-12 01:01) [8]

Структуру в формате JSON в файл сохраняй


 
McSimm ©   (2010-04-12 01:12) [9]

Обычный файл. Позиционирование fseek. Чтение, запись строк. Число для простоты тоже можно писать как строку, только форматированную под фиксированное число символов.
Какие тут могут быть сложности ?


 
McSimm ©   (2010-04-12 01:15) [10]


> Функции pack, unpack

В общем случае - то, что надо. Но для простого record можно обойтись.


 
Кто б сомневался ©   (2010-04-12 01:38) [11]

Я думал чтобы это работало как можно быстрее. Тут еще дело в том, что exe  должен понимать этот файл. Хотел организовать это в виде структур и быстро и удобно и просто.


> Обычный файл. Позиционирование  fseek. Чтение, запись строк.
>  


Муторно это. Потом парсить надо,--в массивы php заводить.


 
silver ©   (2010-04-12 01:58) [12]


> McSimm ©   (12.04.10 01:12) [9]

сначала и думал об этом


> Я думал чтобы это работало как можно быстрее. Тут еще дело
> в том, что exe  должен понимать этот файл. Хотел организовать
> это в виде структур и быстро и удобно и просто.

не бывает в мире идилии :-)


> Муторно это. Потом парсить надо,--в массивы php заводить.

вариантов нет


 
silver ©   (2010-04-12 02:09) [13]

произвольный доступ к записям нужен?
подозреваю, что да
тогда - xml, или таки mysql


 
Дмитрий С ©   (2010-04-12 02:50) [14]

см функцию pack - это то, что тебе нужно


 
McSimm ©   (2010-04-12 14:43) [15]


> Муторно это. Потом парсить надо,--в массивы php заводить.

Тогда я не понял задачу.
Открыть, спозиционировать, прочитать три строки (или одну плюс unpack). Открыть, спозиционировать, записать три строки (или одну pack)
Что парсить ?


> тогда - xml

Откуда у xml произвольный доступ ? Как в xml записать данные в 37588 элемент?



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.068 c
2-1273230896
romario
2010-05-07 15:14
2010.08.27
Не работает функция trim


15-1270040562
Начинающий маковод
2010-03-31 17:02
2010.08.27
Хакинтош на виртуальной машине на PC.


15-1267626055
Копир
2010-03-03 17:20
2010.08.27
Как удалось Архимеду сжечь корабли?


2-1266589006
Vaso
2010-02-19 17:16
2010.08.27
Вставка текущей даты в БД


15-1275337563
Tim
2010-06-01 00:26
2010.08.27
Помощь с переводом





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский