Thomas123: Ingeter/float aus Byte Array

Beitrag lesen

Hallo,
ich versuche gerade mit meinem geringen php Kenntnissen aus einem Byte Array einen Integer bzw. float zusammenzubauen. Jedoch bekomme ich das nicht richtig hin.

Beispieldaten:

  
$data = Array(0xff, 0xff, 0x30, 0x39);  

Das sollen mal meine Rohdaten sein. Aus $data[0] und $data[1] würde ich ganz gerne -1 erhalten, aus $data[2] und $data[3] gerne 12345.

Jetzt habe ich eine Funktion (ganz C-like):

  
function toSInt16($lo, $hi)  
{  
	return (($lo << 8) | $hi);  
}  

welche aber nicht das Vorzeichen beachtet.
Ich habe es schon mit diversen pack/unpack versucht, komme aber nicht so recht weiter.
So in dem Prinzip brauche ich auch eine Konvertierung in einen 4-Byte float.

Vielleicht kann mir einer einen Tip geben.

Danke und Gruß
Thomas