php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.02.2010, 11:37  
Neuer Benutzer
 
Registriert seit: 27.02.2010
Beiträge: 4
PHP-Kenntnisse:
Fortgeschritten
c3hg1 befindet sich auf einem aufstrebenden Ast
Standard ANSI to UTF-8

Hallo.

Ich habe ein Formular in dem man Textdateien hochladen kann, die ich danach parsen werde. Eine Textdatei von einem Drittanbieter macht dabei Probleme mit dem encoding.

Ich hab die Textdatei mal in meinem Editor geöffnet, da steht ANSI coding.
Wenn ich die datei dann manuell als UTF-8 abspeicer klappt mein parsing wieder. Allerdings will ich das natürlich in meinem Coding automatisieren.

Hier ist der Code:
PHP-Code:
$fileToOpen fopen($target_path"rb");
      
// upload KB size is not needed
while ($line fgets($fileToOpen))
{
   echo 
"Orig-Line: ".$line."<br />";
   
// Test 1
   //$line = mb_convert_encoding($line, "UTF-8", "ANSI");
   // Test 2
   
$line utf8_encode($line);
   echo 
"UTF8-Line: ".$line."<br />"
Sowahl Test1 als auch Test2 klappen nicht. Ich krieg immer solche komischen Zeichen:

PHP-Code:
Orig-Line��F�u�l�l� �T�i�l�t� �P�o�k�e�r� �G�a�m�e� �#�1�7�9�2�9�6�9�7�2�6�3�:� �T�a�b�l�e� �M�a�c�h� �1�0� �-� �$�0�.�0�5�/�$�0�.�1�0� �-� �N�o� �L�i�m�i�t� �H�o�l�d�'�e�m� �-� �1�3�:�5�2�:�4�1� �E�T� �-� �2�0�1�0�/�0�1�/�2�6� �
UTF8-LineÿþF�u�l�l� �T�i�l�t� �P�o�k�e�r� �G�a�m�e� �#�1�7�9�2�9�6�9�7�2�6�3�:� �T�a�b�l�e� �M�a�c�h� �1�0� �-� �$�0�.�0�5�/�$�0�.�1�0� �-� �N�o� �L�i�m�i�t� �H�o�l�d�'�e�m� �-� �1�3�:�5�2�:�4�1� �E�T� �-� �2�0�1�0�/�0�1�/�2�6� � 
Weiss jemand was da schief läuft?

Gruß,
c3hg1
c3hg1 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.02.2010, 12:00  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 4.651
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

mb_convert_encoding
__________________
Entwickler aus Leidenschaft und ein Zahnrad in einem der größten Java-Projekte der Welt.
mepeisen ist offline   Mit Zitat antworten
Alt 27.02.2010, 12:22  
Erfahrener Benutzer
 
Registriert seit: 21.12.2009
Beiträge: 379
PHP-Kenntnisse:
Fortgeschritten
G.Schuster ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Die Ausgabe wird vermutlich nicht funktionieren da dein Script vermutlich ISO sendet.
Für's converting wäre ggfls. ein vorheriges mb_detect_encoding() ganz sinnvoll, wobei das nicht immer akurat arbeitet.
Zeichensätze sind mMn die schlimmste Plage, die es in der automatisierten Verarbeitung gibt...PITA trifft's da ganz gut.
G.Schuster ist offline   Mit Zitat antworten
Alt 27.02.2010, 12:50  
Neuer Benutzer
 
Registriert seit: 27.02.2010
Beiträge: 4
PHP-Kenntnisse:
Fortgeschritten
c3hg1 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von mepeisen Beitrag anzeigen
Wie oben bereits erwähnt geht das auch nicht:
PHP-Code:
Warningmb_convert_encoding() [function.mb-convert-encoding]: Illegal character encoding specified in 
mb_detect_encoding() gibt leider nichts zurück.

Geändert von c3hg1 (27.02.2010 um 12:51 Uhr). Grund: copy paste
c3hg1 ist offline   Mit Zitat antworten
Alt 27.02.2010, 13:02  
Erfahrener Benutzer
 
Registriert seit: 21.12.2009
Beiträge: 379
PHP-Kenntnisse:
Fortgeschritten
G.Schuster ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Stell am besten mal eine Testdatei zur Verfügung.
__________________
actra.development - Schwabstr. 2 - 70825 Münchingen
www.actra.de/velopment/ - eMail: php.de@actra.de
Zend Certified Engineer for PHP5
G.Schuster ist offline   Mit Zitat antworten
Alt 27.02.2010, 13:12  
Neuer Benutzer
 
Registriert seit: 27.02.2010
Beiträge: 4
PHP-Kenntnisse:
Fortgeschritten
c3hg1 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von G.Schuster Beitrag anzeigen
Stell am besten mal eine Testdatei zur Verfügung.
Hier ein Beispiel:
File-Upload.net - 2_ANSI.txt

Runterladen und als textdatei speichern...
c3hg1 ist offline   Mit Zitat antworten
Alt 27.02.2010, 17:53  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 4.651
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblickmepeisen ist ein Lichtblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Die Datei ist bereits UTF-8.
__________________
Entwickler aus Leidenschaft und ein Zahnrad in einem der größten Java-Projekte der Welt.
mepeisen ist offline   Mit Zitat antworten
Alt 27.02.2010, 18:22  
erc
Erfahrener Benutzer
 
Registriert seit: 02.01.2009
Beiträge: 730
PHP-Kenntnisse:
Fortgeschritten
erc wird schon bald berühmt werden
Standard

Zitat:
Zitat von c3hg1 Beitrag anzeigen
PHP-Code:
Orig-Line��F�u�l�l� �T�i�l�t� �P�o�k�e�r� �G�a�m�e� �#�1�7�9�2�9�6�9�7�2�6�3�:� �T�a�b�l�e� �M�a�c�h� �1�0� �-� �$�0�.�0�5�/�$�0�.�1�0� �-� �N�o� �L�i�m�i�t� �H�o�l�d�'�e�m� �-� �1�3�:�5�2�:�4�1� �E�T� �-� �2�0�1�0�/�0�1�/�2�6� �
UTF8-LineÿþF�u�l�l� �T�i�l�t� �P�o�k�e�r� �G�a�m�e� �#�1�7�9�2�9�6�9�7�2�6�3�:� �T�a�b�l�e� �M�a�c�h� �1�0� �-� �$�0�.�0�5�/�$�0�.�1�0� �-� �N�o� �L�i�m�i�t� �H�o�l�d�'�e�m� �-� �1�3�:�5�2�:�4�1� �E�T� �-� �2�0�1�0�/�0�1�/�2�6� � 
Weiss jemand was da schief läuft?
Das ist UTF16... die Fragezeichen sind das 2te Byte jedes Zeichen.
erc ist offline   Mit Zitat antworten
Alt 27.02.2010, 22:20  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 3.891
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist ein sehr geschätzer Menschlstegelitz ist ein sehr geschätzer Menschlstegelitz ist ein sehr geschätzer Menschlstegelitz ist ein sehr geschätzer Mensch
Standard

Zitat:
Zitat von c3hg1 Beitrag anzeigen
Code:
utf8-line: ÿþf�u�l�l� �t�i�l�t� �p�o�k�e�r� �g�a�m�e� �#�1�7�9�2�9�6�9�7�2�6�3�:� �t�a�b�l�e� �m�a�c�h� �1�0� �-� �$�0�.�0�5�/�$�0�.�1�0� �-� �n�o� �l�i�m�i�t� �h�o�l�d�'�e�m� �-� �1�3�:�5�2�:�4�1� �e�t� �-� �2�0�1�0�/�0�1�/�2�6� �
ÿþ = ff fe

UTF16 LittleEndian
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Alt 28.02.2010, 17:17  
Erfahrener Benutzer
 
Registriert seit: 29.08.2008
Beiträge: 755
halskrause wird schon bald berühmt werden
Standard

"iconv" und dessen "translit" Funktion machen das eigentlich ganz gut.
halskrause ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
UTF-8 nach ANSI cra PHP-Fortgeschrittene 8 23.07.2009 00:50
[Erledigt] UTF-8 &amp; ANSI werden verschieden angezeigt, warum? AnnyKey HTML, Usability und Barrierefreiheit 8 11.05.2009 14:08
[Erledigt] Zeichensatz Konflikt... halskrause Datenbanken 20 29.01.2009 11:07
ANSI Text erstellen halskrause PHP Tipps 2008 11 14.10.2008 00:10
Daten aus 2 Tabellen zusammenfuehren, 1 ID >>> 10x amenhotheb Datenbanken 27 19.06.2006 09:42
[Erledigt] Konvertierung OEM ASCII zu Windows ANSI Zeichen PHP-Fortgeschrittene 5 12.08.2005 12:42

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php iconv ansi, http://www.php.de/php-fortgeschrittene/65161-ansi-utf-8-a.html, iconv ansi, php ansi to utf8, php convert ansi to utf8, php ansi, php convert ansi to utf-8, php ansi utf8, iconv ansi to utf-8, php convert utf8 to ansi, php encode ansi, mb_convert_encoding ansi, ansi to utf8, php iconv ansi to utf-8, convert ansi to utf-8 php, ansi utf-8, iconv ansi php, ansitoutf8, utf-8 ansi, php convert utf-8 to ansi

Alle Zeitangaben in WEZ +1. Es ist jetzt 04:52 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum