имеется набор чисел и структурка к этим числам написаная на C++ мне нужно разобрать числа вида: Код (Text): 136959 118228493 39847173 4656386 2821379 3347034 36964615 136212 2821380 6230537 и т.п. структурка C++ выглядит так: Код (Text): struct _INVENKEY { BYTE bySlotIndex; BYTE byTableCode; WORD wItemIndex; }; как я понял на пхп нужно эти числа перегнать в хекс а потом посимвольно разбирать т.к. по структуре они должны быть одинаковы, но это действует не во всех случаях, к примеру число 136959 в хексе это 216ff. И каким образом подобные числа разбирать, я так и непонял.
нет, функция не так как нужно разбивает числа. cbySlotIndex должен быть в пределах от 0 до 99 cbyTableCode - от 0 до 24 swItemIndex - от 0 до ~9500 и ещё 1 ньюанс: числа записываются задом наперёд - т.е. первые 4 байта - это swItemIndex вторые 2б. cbyTableCode и третие 2б. - cbySlotIndex
всё, решил эту задачу таким путём: PHP: <?php function getii($ii) { $hexv=dechex($ii); switch (strlen($hexv)) { case 4: $hexv="0000".$hexv; break; case 5: $hexv="000".$hexv; break; case 6: $hexv="00".$hexv; break; case 7: $hexv="0".$hexv; break; } $asd=$hexv; $r['code']=hexdec($asd[0].$asd[1].$asd[2].$asd[3]); $r['type']=hexdec($asd[4].$asd[5]); $r['slot']=hexdec($asd[6].$asd[7]); return $r; } ?>