私は 2 バイトの長さの 16 進文字列を持っており、最初のバイトを左にビット単位でシフトし、2 番目のバイトを追加する必要があります。どちらの文字列も 32 文字の長さの文字列から取得されます。文字列は、解析中のデータ ファイルから取得されます。
$hex="05E000752F0100D0A500503891FB199A"; //example line of data from file
$vcanvbatt=(base_convert(((base_convert(substr($hex,12,2),16,2)<<8)+base_convert(substr($hex,14,2),16,2)),2,10))/100;