php (или c ++) как читать данные нескольких форматов из двоичного файла

у меня есть вопрос, который я не могу найти ответ
я использую следующий код для записи данных из базы данных в двоичный файл:

$data = array();
$prev = 1;
$i=0;

$query="select wc.MAC, ws.SIGNAL_STRENGTH, ws.ID, ws.USER_SCAN from wifi_cell as wc, wifi_scan as ws where ws.WIFI_CELL=wc.ID";
$result=kmysql_query($query);
while ($row = mysql_fetch_array($result, MYSQLI_ASSOC)) {
$data[] = array(0,0,0,null,$row['MAC'],$row['SIGNAL_STRENGTH'],null,$row['USER_SCAN']);
$i++;
}

mysql_free_result($result);

$j=0;
$query="select ul.LATITUDE, ul.LONGITUDE,ul.ALTITUDE, ul.TIME from user_location as ul where 1";
$result=kmysql_query($query);
while ($row = mysql_fetch_array($result, MYSQLI_ASSOC)) {
while ($j<$i) {
if ($data[$j][7] == $prev) {
$data[$j][0] = $row['LATITUDE'];
$data[$j][1] = $row['LONGITUDE'];
$data[$j][2] = $row['ALTITUDE'];
$data[$j][3] = $row['TIME'];
$j++;
}
else {
$prev = $data[$j][7];
break;
}

}
}

mysql_free_result($result);

$handle = fopen('C:\\Users\\Duc Nguyen\\Desktop\\text1.bin', 'r+');
ftruncate($handle, 0);
fclose($handle);

for ($j=0;$j<$i;$j++) {
$data[$j][0] = pack("d*",$data[$j][0]);
$data[$j][1] = pack("d*",$data[$j][1]);
$data[$j][2] = pack("d*",$data[$j][2]);
$data[$j][3] = pack("A*",$data[$j][3]);
$data[$j][4] = pack("Z*",$data[$j][4]);
$data[$j][5] = pack("d*",$data[$j][5]);
$data[$j][6] = pack("A*",$data[$j][6]);
$data[$j][7] = pack("d*",$data[$j][7]);

file_put_contents('C:\\Users\\Duc Nguyen\\Desktop\\text1.bin', $data[$j], FILE_APPEND);
}

но теперь двоичный файл содержит много типов данных, и я не знаю, как их читать. Можете ли вы показать мне, как читать их в PHP? а также с ++?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …