2016-05-24 5 views
-1

Ich habe den folgenden Code, der versucht, eine Zeichenfolge von UTF zu CP1256 zu konvertieren. Ich möchte die Zeichenfolge arabicum dekodieren, und die Seite Verschlüsselung UTF8Decoding String von UTF-8 nach Windows1256

<?php 

$string = "ãÍãÏ Úæäí ãÍãæÏ Úáí"; 
$string = iconv("UTF-8//TRANSLIT//IGNORE", "Windows-1252//TRANSLIT//IGNORE",  $string); 

echo $string; 

?> 
+0

Was ist die Frage? –

+0

@Alastair McCormack Ich möchte die Zeichenfolge in arabischer Sprache angezeigt werden, was ist –

+0

Was ist die Codierung Ihrer Quelldatei? –

Antwort

0
$strings = "ãÍãÏ Úæäí ãÍãæÏ Úáí"; 

setlocale(LC_CTYPE, 'nl_NL.UTF-8'); 

$convert = iconv('UTF-8', 'windows-1251//TRANSLIT//IGNORE', $strings); 

echo var_dump($convert); 
1

So Ihre arabischen Text festgelegt ist, hat sich in Windows-1256 und dann falsch codiert auf Windows-1252 codiert worden sind.

Wenn Ihre Quelldatei UTF-8 ist codiert sind, ist die Antwort:

<?php 

$string = "ãÍãÏ Úæäí ãÍãæÏ Úáí"; 
$string = iconv("UTF-8//TRANSLIT//IGNORE", "Windows-1252//TRANSLIT//IGNORE", $string); 
# $string is now back to its 1256 encoding. Encode to UTF-8 for web page 
$string = iconv("Windows-1256//TRANSLIT//IGNORE", "UTF-8//TRANSLIT//IGNORE", $string); 

echo $string; 

?> 

Wenn die Quelldatei "windows-1252" codiert ist, dann müssen Sie verwenden:

<?php 

$string = "ãÍãÏ Úæäí ãÍãæÏ Úáí"; 
# Interperate windows-1252 string as if it were windows-1256. Encode to UTF-8 for web page 
$string = iconv("Windows-1256//TRANSLIT//IGNORE", "UTF-8//TRANSLIT//IGNORE", $string); 

echo $string; 

?> 

Wenn Sie $string kommt tatsächlich aus einer Datenbank oder Datei, dann müssen Sie die Codierung der Quelle bestimmen, bevor Sie eine Konvertierung anwenden.

+0

Als du sehr, dein Code funktionierte wie ein Zauber für ein paar Minuten, dann hörte es irgendwie auf zu arbeiten, das wirkliche Beispiel, an dem ich arbeite, findet sich in dieser Frage [link] (http://stackoverflow.com/questions/37405245/arabic-pdf-form-zu-php-zu-mysql-unicode-dekodierung) und wenn Sie eine Kopie der PDF-Datei möchten, kann ich es hochladen. –