Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Формирование пакета бинарных данных. 
:(
    Опции темы
Coder
Дата 26.9.2008, 06:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 13.12.2004

Репутация: нет
Всего: 11



1. Как сформировать пакет с бинарными данными в памяти?
2. Закодировать его Base64.
3. Отправить клиенту.

У меня есть структура:
{
char *name;
int x;
int y;
}

Параметры name, x, y я получаю из БД. Как мне их записать в буфер без преобразования чисел (x,y) в строку?

PM MAIL   Вверх
skyboy
Дата 26.9.2008, 08:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(Coder @  26.9.2008,  05:04 Найти цитируемый пост)
У меня есть структура:
{
char *name;
int x;
int y;
}

ну, это ж Си-шный код. разделом точно не ошибся?  и в какой буфер ты собираешься их запихивать?
PM MAIL   Вверх
Coder
Дата 26.9.2008, 08:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 13.12.2004

Репутация: нет
Всего: 11



Цитата(skyboy @  26.9.2008,  16:45 Найти цитируемый пост)
ну, это ж Си-шный код. разделом точно не ошибся? 

Нет, это всего лишь пример типизации, которая мне нужна. 

Цитата(skyboy @  26.9.2008,  16:45 Найти цитируемый пост)
 и в какой буфер ты собираешься их запихивать?

В этом и вопрос. Можно ли создать средствами PHP такой буфер в который бы помещались значения чисел, а не их строковые эквиваленты. Если у меня есть число типа int  - 51234. Мне нужно чтобы оно записалось в этот буфер  как 0x22c80000, а не как строка "51234".

Это сообщение отредактировал(а) Coder - 26.9.2008, 08:54
PM MAIL   Вверх
MoLeX
Дата 26.9.2008, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



нет такого...

Добавлено через 26 секунд
100% не уверен, но еще не встречал не где


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
Coder
Дата 26.9.2008, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 13.12.2004

Репутация: нет
Всего: 11



Ладно, будем искать другие пути...
PM MAIL   Вверх
Diabolus
Дата 27.9.2008, 02:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 12.6.2007

Репутация: нет
Всего: нет



О стандартных не слышал, но что мешает использовать dechex(), после чего объединять два байта в один, а далее - chr()?
Хотя, это только для отдельных числовых строк. Если знаешь размерность переменных, то можно просто слепить их все вместе, а потом таким же образом разлепить. Если знаешь асм, то вспомни, как там идёт работа со структурами. Возможно, поможет :) В сях просто всё не так наглядно.

Это сообщение отредактировал(а) Diabolus - 27.9.2008, 02:37
PM MAIL   Вверх
Coder
Дата 28.9.2008, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 13.12.2004

Репутация: нет
Всего: 11



Diabolus, ну это же все равно строки будут.
PM MAIL   Вверх
Sunvas
Дата 28.9.2008, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 8
Всего: 89



Цитата(Coder @  28.9.2008,  12:57 Найти цитируемый пост)
Diabolus, ну это же все равно строки будут.

А как ты клиенту собираешься это отдавать? - Только в виде строки.


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
BrainWorker
Дата 28.9.2008, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 553
Регистрация: 9.8.2007
Где: Дубна, Россия

Репутация: 1
Всего: 2



string serialize ( mixed $value )

mixed unserialize ( string $str )

Это сообщение отредактировал(а) BrainWorker - 28.9.2008, 21:06
PM MAIL Jabber   Вверх
nerezus
Дата 28.9.2008, 21:56 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: 12
Всего: 43



Цитата

Можно ли создать средствами PHP такой буфер в который бы помещались значения чисел, а не их строковые эквиваленты. Если у меня есть число типа int  - 51234. Мне нужно чтобы оно записалось в этот буфер  как 0x22c80000, а не как строка "51234".
 http://php.net/pack

Это сообщение отредактировал(а) nerezus - 28.9.2008, 21:57


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
bobik02
Дата 28.9.2008, 22:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 451
Регистрация: 26.11.2007

Репутация: 2
Всего: 14



Разрешите поинтересоваться зачем это Вам нужно ? 


--------------------
Have a nice day
PM   Вверх
Coder
Дата 29.9.2008, 05:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 13.12.2004

Репутация: нет
Всего: 11



Цитата(Sunvas @ 29.9.2008,  00:23)
Цитата(Coder @  28.9.2008,  12:57 Найти цитируемый пост)
Diabolus, ну это же все равно строки будут.

А как ты клиенту собираешься это отдавать? - Только в виде строки.

Да, но уже после кодировки бинарных данных (из буфера) алгоритмом base64.

Добавлено через 2 минуты и 10 секунд
Цитата(bobik02 @ 29.9.2008,  06:04)
Разрешите поинтересоваться зачем это Вам нужно ?

Хочу использовать apache+php для своих нужд (в общем это будет не web сервер).
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0747 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.