DerWaldgeist: Umlaute in String beim auslesen eines pop3 Postfaches

Beitrag lesen

... ok vergesst das oben mal. War in der Tat Blödsinn ...
Ich habe nicht bemerkt dass in meinem $hex = bin2hex($msgBody); string auch Leerstellen drin waren ... Mein ü ist also nicht fc0d3c62723e sondern nur fc.

Der Normale Hexadezimalwert für ü ist aber c3bc. Man muss also nur im hexadezimalen string das fc durch ein c3bc ersetzen ...

Ich stand da wohl etwas auf dem Schlauch (na ja, leider gibts' hier ja keine Löschfunktion für eigene Postings - dann würde ich meine letzen beiden Einträge löschen um der Verwirrung etwas entgegenzuwirken ...)

Hier also meine momentane Lösung:

  
function hex2bin($h)  // ist ein Bsp. aus dem Manual  
  {  
  if (!is_string($h)) return null;  
  $r='';  
  for ($a=0; $a<strlen($h); $a+=2) { $r.=chr(hexdec($h{$a}.$h{($a+1)})); }  
  return $r;  
  }  
	  
	$hex = bin2hex($msgBody);  // umwandeln in hexadez.  
	/**  
	echo "<br>ue: ".bin2hex('ü')."<br>";  
	echo "<br>bin: ".hex2bin("fc")."<br>";  
        echo $hex;  
	**/  
	  
//  fc hexadez. für ü  
//  soll c3bc werden  
  
if (eregi("fc", $hex)) {  
  // echo "Es wurde eine Übereinstimmung gefunden.";  
   $nachr = eregi_replace("fc", "c3bc" , $hex);  
   $kon_nachr = hex2bin($nachr);  
};  
  
echo "<br><br>".$kon_nachr;

:-) Alex