php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 26-11-2008, 13:46
Nuramon
 Newbie
Links : Onlinestatus : Nuramon ist offline
Registriert seit: Jun 2006
Beiträge: 28
Nuramon ist zur Zeit noch ein unbeschriebenes Blatt
Standard Character Set / Encoding Umstellung von ISO-8859-1 auf ...?

Hi,

ich habe das Problem, dass ein relativ großes Projekt in iso-8859-1 realisiert wurde (wie so oft bei alten PHP Seiten). Mein Problem ist jetzt, dass dort jetzt vermehrt osteuropäische Sprachen vorkommen, dessen Zeichen natürlich durch iso-8859-1 nicht abgedeckt sind.

Jetzt stellt sich die Frage was besser wäre:

Umstellung auf Unicode bzw. UTF-8 wäre sicherlich das optimalste, aber funktioniert das auch sinnvoll mit PHP4? htmlentities hat wenigstens den charset-Parameter ab 4.1.0 dabei...

Man müsste halt alle Files und Daten in der Datenbank umkonvertieren und bei PHP aufpassen, dass alle Funktionen auch mit Unicode funktionieren. (Es ist PHP 4.3.10 im Einsatz)


Eine andere (und bequemere) Möglichkeit wäre, statt iso-8859-1 den windows-1250 oder windows-1252 Zeichensatz zu verwenden. Habt ihr da wer Erfahrung damit, ob es reichen würde einfach nur die Header zu ändern? Großteils müsste sich ja iso-8859-1 mit windows-1250 decken, oder?

Und andere Frage: gibt es Kompatibilitätsprobleme mit anderen Betriebssystemen, wenn windows-1250 verwendet wird?

Vielen Dank für eure Hilfe schonmal.

(PS: Nein, ein Update auf PHP5 kommt hier atm nicht in Frage )
Mit Zitat antworten
  #2 (permalink)  
Alt 26-11-2008, 21:19
jmc
 PHP Junior
Links : Onlinestatus : jmc ist offline
Registriert seit: Mar 2006
Beiträge: 868
jmc befindet sich auf einem aufstrebenden Ast
Standard

Das mit htmlspecialchars ist 1. nicht sinnvoll, da nur sehr begrenzt möglich und zweitens gibt es für viele Zeichen gar keine "special chars". Du musst es Byte für Byte machen, dann klappt das super.
windows-1250 ist keine wirklich sinnvolle Lösung.
Mit Zitat antworten
  #3 (permalink)  
Alt 26-11-2008, 21:27
ghostgambler
 Master
Links : Onlinestatus : ghostgambler ist offline
Registriert seit: Jul 2004
Ort: DE - NRW
Beiträge: 4.620
ghostgambler ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Eigentlich braucht man überhaupt keine Zeichen bei der Ausgabe in HTML-Entities zu kodieren, außer < > & und ".
Der Rest ist ja so etwas von egal, wenn die HTTP-Header richtig sind.

Und wenn du eh den Zeichensatz umstellst, dann gleich auf UTF8.
Sollte auch bei php4 möglich sein.
Kannst ja mal lokal daheim ausprobieren, ist ja kein Ding.
Mit Zitat antworten
  #4 (permalink)  
Alt 26-11-2008, 22:15
asp2php
 Banned
Links : Onlinestatus : asp2php ist offline
Registriert seit: Feb 2004
Beiträge: 11.745
asp2php ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ja, mit PHP4 ist möglich. Meine Seite wird in USA gehostet und darauf ist immer noch Apache 1.3 + PHP 4.x.
Mit Zitat antworten
  #5 (permalink)  
Alt 27-11-2008, 11:31
Nuramon
 Newbie
Links : Onlinestatus : Nuramon ist offline
Registriert seit: Jun 2006
Beiträge: 28
Nuramon ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ok danke. Ich weiß zwar nicht, was ihr gemeint habt mit htmlspecialchars(), aber ich werde diese Funktion nicht verwenden um nicht-latin-1 Zeichen zu escapen, sondern mir ging es darum, dass ich zumindest von dieser Funktion weiß, dass sie in PHP4 Probleme mit UTF-8 macht, wenn man nicht explizit den Zeichensatz übergibt. Genauso auch strtolower(), da PHP intern mit latin-1 arbeitet.

Auf diese Dinge müsste ich ja aufpassen, wenn ich auf UTF-8 umstelle, aber da habe ich bisher nur Erfahrung mit PHP5.

Abgesehen davon, für die Lösung mit windows-1250 habt ihr keine Erfahrungen? Das wäre nämlich eigentlich die bevorzugte Vorgehensweise, weil man dann nicht alles auf UTF-8 umstellen muss.
Mit Zitat antworten
  #6 (permalink)  
Alt 27-11-2008, 11:45
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Auf diese Dinge müsste ich ja aufpassen, wenn ich auf UTF-8 umstelle, aber da habe ich bisher nur Erfahrung mit PHP5.
Die String-Funktionen in PHP5 sind auch noch nicht Unicode-fähig, das kommt erst in PHP5.3 bzw. PHP6 dazu. Aber mit den mb-Funktionen kommt man da schon auch in kleineren Versionen klar.

Zitat:
Abgesehen davon, für die Lösung mit windows-1250 habt ihr keine Erfahrungen? Das wäre nämlich eigentlich die bevorzugte Vorgehensweise, weil man dann nicht alles auf UTF-8 umstellen muss.
Eine Zeichensatzänderung findet ja eh statt, da kannst du besser direkt UTF-8 nehmen und dir Probleme mit dem 1250-Zeichensatz in der Zukunft direkt sparen.
Mit Zitat antworten
  #7 (permalink)  
Alt 27-11-2008, 13:42
Nuramon
 Newbie
Links : Onlinestatus : Nuramon ist offline
Registriert seit: Jun 2006
Beiträge: 28
Nuramon ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von PHP-Desaster
Die String-Funktionen in PHP5 sind auch noch nicht Unicode-fähig, das kommt erst in PHP5.3 bzw. PHP6 dazu. Aber mit den mb-Funktionen kommt man da schon auch in kleineren Versionen klar.
Ja eh, da weiß ich zumindest worauf ich aufpassen muss, deswegen wollte ich eigentlich wissen, ob es im Unterschied zu PHP5 bei PHP4 noch Dinge gibt, die problematisch sein könnten. Aber gut, anscheinend dürfte sich das nicht sonderlich unterscheiden.

Zitat:
Original geschrieben von PHP-Desaster
Eine Zeichensatzänderung findet ja eh statt, da kannst du besser direkt UTF-8 nehmen und dir Probleme mit dem 1250-Zeichensatz in der Zukunft direkt sparen.
Naja, der Hintergedanke ist ja, dass sich der windows-1250 Zeichensatz großteils mit latin-1 deckt, d.h. ich muss die Dateien (meines Wissens nach) ohnehin nicht umkonvertieren...oder liege ich da falsch?

Die betroffenen Texte, die den anderen Zeichensatz benötigen, kommen alle aus der Datenbank..
Mit Zitat antworten
  #8 (permalink)  
Alt 27-11-2008, 13:59
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Heutzutage kann man ganz entspannt davon ausgehen, dass alle beteidigten Programme mit utf-8 umgehen können. Und bei Sprachmischmasch gibts eigentlich keine Alternative zu UTF.

Zitat:
Naja, der Hintergedanke ist ja, dass sich der windows-1250 Zeichensatz großteils mit latin-1 deckt, d.h. ich muss die Dateien (meines Wissens nach) ohnehin nicht umkonvertieren...oder liege ich da falsch?
Wie soll ichs nur sagen.....
Nagut: Pfusch!!
Und die Keule wird dir folgen und dich irgendwann unerwartet aus dem Hinterhalt treffen.

Zitat:
im Unterschied zu PHP5 bei PHP4 noch Dinge gibt, die problematisch sein könnten.
Die größten Änderungen gabs im OOP Bereich.
Da PHP4 mittlerweile als tot gilt, sollte man sich auch nicht mehr damit beschäftigen.

Warum willst du nicht umstellen?
__________________
Wir werden alle sterben
Mit Zitat antworten
  #9 (permalink)  
Alt 27-11-2008, 15:41
Nuramon
 Newbie
Links : Onlinestatus : Nuramon ist offline
Registriert seit: Jun 2006
Beiträge: 28
Nuramon ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von combie
Wie soll ichs nur sagen.....
Nagut: Pfusch!!
Und die Keule wird dir folgen und dich irgendwann unerwartet aus dem Hinterhalt treffen.

[...]

Die größten Änderungen gabs im OOP Bereich.
Da PHP4 mittlerweile als tot gilt, sollte man sich auch nicht mehr damit beschäftigen.

Warum willst du nicht umstellen?
Naja, was soll ich sagen. Bei dem Alter der Applikationen sind Umstellungen mit viel Aufwand und Kosten verbunden, die sich im Falle von PHP5 einfach nicht auszahlen.
Bezogen auf UTF-8 bin ich ja am Überlegen, aber man muss es dem Kunden natürlich auch schmackhaft machen und in diesem Fall würde der Nutzen wahrscheinlich den Kosten hinterherhinken.

Da wäre eine "günstige" Lösung mit windows-1250 natürlich willkommen und in meinen Augen auch eine vernünftige Übergangslösung. Wenn es mal Relaunches gibt, sollten die sowieso in Unicode gehalten werden, keine Frage..

Nunja, danke jedenfalls für eure Kommentare zu dem Thema.
Mit Zitat antworten
  #10 (permalink)  
Alt 27-11-2008, 15:52
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Zitat:
Bei dem Alter der Applikationen sind Umstellungen mit viel Aufwand und Kosten verbunden,
Ist das eine Vermutung?

Ich habe vor wenigen Monaten eine uralte und auch recht fette Anwendung von PHP3 nach 5 portiert...
Hat ca 20 Min gedauert, dann lief sie wieder.
Im Prinzip wars nur eine Änderung von *.php3 auf *.php
__________________
Wir werden alle sterben
Mit Zitat antworten
  #11 (permalink)  
Alt 27-11-2008, 16:14
Nuramon
 Newbie
Links : Onlinestatus : Nuramon ist offline
Registriert seit: Jun 2006
Beiträge: 28
Nuramon ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Schon eine Vermutung...bei dem Funktionsumfang dauert es ewig alles durchzutesten. Abgesehen davon, ist ja jetzt eh nicht PHP4 das Problem, sondern der Zeichensatz.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 22:44 Uhr.