-
09.05.12 19:38 #1
Mitglied Smaragd
- Registriert seit
- Mar 2008
- Beiträge
- 1.024
Guten Abend!
Seitdem ich meine Webseite auf UTF-8 umgestellt habe, werden "äöü" mit ucfirst() nicht mehr großgeschrieben.
Die Suche erbrachte nur, dass hier die Unterstützung fehlt. Wie kann man dennoch, eventuell mit anderen Funktionen solche Umlaute großschreiben? Oder gibt es irgendwelche Einstellungen, sodass dies auch mit UTF-8 funktioniert?
-
09.05.12 19:51 #2
Das PHP-Handbuch gibt eigentlich schon ausreichende Informationen dazu:
Zitat von http://de3.php.net/manual/de/function.ucfirst.php
Ich mag:
- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
09.05.12 20:00 #3
Du könntest mb_convert_case() benutzen:
PHP-Code:$string = mb_convert_case($string, MB_CASE_UPPER, 'UTF-8');
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
09.05.12 20:15 #4
Mitglied Smaragd
- Registriert seit
- Mar 2008
- Beiträge
- 1.024
D.h. ich müsste im Server etwas umstellen? Wie stelle ich denn die Voreinstellung um, es kann ja kein zusätzlicher Paramenter übergeben werden.
-
09.05.12 21:10 #5
Schau dir mal setlocal() an.
Ich mag:
- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
10.05.12 03:18 #6
Mitglied Smaragd
- Registriert seit
- Mar 2008
- Beiträge
- 1.024
Ok ich werde mir das mal zu Gemüte führen.
Nur mal zum Verständis und für später; Muss ich grundsätzlich bei der Nutzung von UTF-8 auch setlocal() nutzen oder ist das nur ein Behelf!?
Seit der Umstellung auf UTF-8 hatte ich sehr viele Probleme und diese möchte ich bei nächsten Webseiten vermeiden.
-
10.05.12 10:05 #7
Man kann so etwas auch viel schöner über die php.ini einstellen, aber auf die hat man meist keinen Zugriff. Ansonsten bietet sich das schon an, wenn man ganz sicher sein will.
Ich mag:
- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
10.05.12 13:44 #8
Mitglied Smaragd
- Registriert seit
- Mar 2008
- Beiträge
- 1.024
Ich habe die Einstellung nun vorgenommen und den Webserver neugestartet. Das Problem ist jedoch immer noch das Gleiche!?
Code :1
;intl.default_locale = de_DE
Geändert von Sasser (10.05.12 um 13:55 Uhr)
-
10.05.12 17:33 #9
Mitglied Smaragd
- Registriert seit
- Mar 2008
- Beiträge
- 1.024
Ich habe es nun mit einer Testdatei versucht mit dem Inhalt:
Trotzdem wird der Umlaut am Anfang nicht groß geschrieben. Wenn ich den charset auf ISO umstelle, funktioniert es.PHP-Code:<?php
header('Content-Type: text/html; charset=utf-8');
setlocale(LC_ALL, "de_DE");
echo ucfirst ( "österreich" );
?>
-
10.05.12 19:03 #10
Da weiß ich auch gerade nicht weiter.
Ich mag:
- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
10.05.12 22:54 #11
Mitglied Smaragd
- Registriert seit
- Mar 2008
- Beiträge
- 1.024
Ich weiß auch nicht, warum ich unbedingt die Webseite auf UTF-8 umstellen musste. Mit ISO hat es doch wunderbar funktioniert und es gab überhaupt keine Probleme.
Anstatt dass man mit UTF-8 alles vereinfacht ist es einfach nur wahnsinnig kompliziert geworden. Ich werde warscheinlich das ganze Projekt wieder auf ISO umstellen, da das UTF-8 keine Vorteil bringt. Der Sinn der Umstellung auf UTF-8 besteht anscheind nur darin, dass jemand festgelegt hat, das es modern ist.
Ich bedanke mich trotzdem für die Hilfe und hoffe dass Webmaster die vorhaben Ihre Webseite umzustellen, lieber die Finger davon lassen
-
10.05.12 22:58 #12
Ich kann nicht zustimmen, da ich alles in UTF-8 gestalte, weil es einfach einfacher ist. Und moderner.
Nachtrag: Bei mir funktioniert ucfirst() bei Umlauten im Übrigen auch nicht mit UTF-8, aber eigentlich kann man so etwas doch leicht lösen:
Code PHP:1 2 3 4
function utf8_ucfirst ($string) { return utf8_encode(ucfirst(utf8_decode($string))); }
Geändert von einfach nur crack (10.05.12 um 23:08 Uhr)
Ich mag:
- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
11.05.12 00:02 #13
Mitglied Smaragd
- Registriert seit
- Mar 2008
- Beiträge
- 1.024
Ja aber ich sehe daran nichts, was einfach ist. Man muss soviele Funktionen selbst bauen, welche bei UTF-8 nicht funktionieren.
Welche Funktionen funktionieren in UTF-8 denn auch nicht? Weil wenn dann muss ich gleich alle umstellen, um mir spätere Arbeiten zu ersparen
-
11.05.12 00:23 #14
Vermutlich funktionieren all die Funktionen nicht, die unterscheiden müssen, ob ein Buchstabe ein Klein- oder ein Großbuchstabe ist. Also folgende:
- ucfirst
- strtolower
- strtoupper
- lcfirst
- ucwords
Ansonsten kannst du dir auch mal diese Funktionen hier ansehen: http://de.php.net/manual/en/ref.mbstring.phpIch mag:
- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
11.05.12 00:35 #15
Mitglied Smaragd
- Registriert seit
- Mar 2008
- Beiträge
- 1.024
Oh man, dann funktionieren ja zusätzlich preg_match, strpos und weitere Funktionen auch nicht oder? So wie ich das sehe, muss ich ja die komplette Webseite neu schreiben. Wie machst du das denn, wenn du deine Webseite auch in UTF-8 erstellst?
Ähnliche Themen
-
Erweitertes ucfirst
Von tobee im Forum PHPAntworten: 2Letzter Beitrag: 07.05.07, 17:57


4Danke

Zitieren

Login