ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
запись бинарных данных php |

07.10.2008, 09:56
|
|
Участник форума
Регистрация: 06.02.2008
Сообщений: 110
Провел на форуме: 217423
Репутация:
32
|
|
запись бинарных данных php
Стоит задача слопатить бинарный файл с помощью php. Научился запихивать по одному байту, типа так
"fwrite($fh,pack("c", $value))", а как записать например число 150 в 3 байта?
|
|
|

07.10.2008, 10:35
|
|
Members of Antichat - Level 5
Регистрация: 25.02.2007
Сообщений: 495
Провел на форуме: 3244717
Репутация:
1980
|
|
а как записать например число 150 в 3 байта?
150 - это 1 байт, чтобы получить три байта нужно прибавить еще два нулл байта:
pack("cxx", 150);
|
|
|

07.10.2008, 11:04
|
|
Участник форума
Регистрация: 06.02.2008
Сообщений: 110
Провел на форуме: 217423
Репутация:
32
|
|
здорово,) теперь почти все ясно, как я понимаю 100000 занимает 3 байта, а вот как его записать ровно в 3 байта, когда использую pack("f", 100000); выделяется 4.
|
|
|

07.10.2008, 11:28
|
|
Участник форума
Регистрация: 06.02.2008
Сообщений: 110
Провел на форуме: 217423
Репутация:
32
|
|
Все дальше сам разобрался, сделал вот так
if (0 <= $size && $size < 256) fwrite($fh,pack("xxc", $size));
elseif (256 <= $size && $size < 65536) fwrite($fh,pack("xn", $size));
else
{
$pref = $size % 65536;
$main = ($size - $pref) / 65536;
fwrite($fh,pack("c", $main));
if (0 <= $pref && $pref < 256) fwrite($fh,pack("xc", $pref));
elseif (256 <= $pref && $pref < 65536) fwrite($fh,pack("n", $pref));
}
|
|
|
|
 |
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Books PHP
|
FRAGNATIC |
PHP |
186 |
21.02.2010 02:41 |
|
Что такое Php?
|
PAPA212 |
Болталка |
13 |
28.12.2007 20:44 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|