Grob falsch!
bearbeitet von Freitag> > PHP kennt die Wochentage (ebenso Monatsnamen) zwar nicht "selbst", kann aber - vorausgesetzt man wirft mal einen Blick ins Handbuch - die Funktionen bzw. Libarys des OS "wrappen"(*): […] Das macht PHP auch bei hunderten anderer Funktionen.
>
> Wo genau macht PHP das?
[Ganz einfach schon bei strftime selbst](http://www.cplusplus.com/reference/ctime/strftime/). ctime ist eine solche lib und wird von PHP eingebunden und, ebenso wie andere Funktionen aus der libc, benutzt.
Deswegen auch das Verhalten bezüglich der Prozesse/Threads. Hat man den Webserver "multithreaded" und PHP als Modul bzw. fcgi oder als ähnlichen Prozess am laufen kann es zwar Probleme geben, es wird aber genügen setlocale vor der ersten Ausgabe zu verwenden.
> Anzubieten, dass man setlocale() selbst nutzen kann, ist noch nicht, dass "PHP das macht".
Hinzuschreiben, dass PHP "Guten Morgen" ausgeben soll, ist auch noch nicht, dass "PHP das macht". PHP macht, was man ihm zu machen aufgibt. Und wenn man setlocale nicht selbst anwendet, dann nimmt PHP ebenso wie strftime aus der c-lib eben "en_US" als Voreinstellung.
Grob falsch!
bearbeitet von Freitag> > PHP kennt die Wochentage (ebenso Monatsnamen) zwar nicht "selbst", kann aber - vorausgesetzt man wirft mal einen Blick ins Handbuch - die Funktionen bzw. Libarys des OS "wrappen"(*): […] Das macht PHP auch bei hunderten anderer Funktionen.
>
> Wo genau macht PHP das?
[Ganz einfach schon bei strftime selbst](http://www.cplusplus.com/reference/ctime/strftime/). ctime ist eine solche lib und wird von PHP eingebunden und, ebenso wie andere Funtionen aus der libc, benutzt.
Deswegen auch das Verhalten bezüglich der Prozesse/Threads. Hat man den Webserver "multithreaded" und PHP als Modul bzw. fcgi oder als ähnlichen Prozess am laufen kann es zwar Probleme geben, es wird aber genügen setlocale vor der ersten Ausgabe zu verwenden.
> Anzubieten, dass man setlocale() selbst nutzen kann, ist noch nicht, dass "PHP das macht".
Hinzuschreiben, dass PHP "Guten Morgen" ausgeben soll, ist auch noch nicht, dass "PHP das macht". PHP macht, was man ihm zu machen aufgibt. Und wenn man setlocale nicht selbst anwendet, dann nimmt PHP ebenso wie strftime aus der c-lib eben "en_US" als Voreinstellung.
Grob falsch!
bearbeitet von Freitag> > PHP kennt die Wochentage (ebenso Monatsnamen) zwar nicht "selbst", kann aber - vorausgesetzt man wirft mal einen Blick ins Handbuch - die Funktionen bzw. Libarys des OS "wrappen"(*): […] Das macht PHP auch bei hunderten anderer Funktionen.
>
> Wo genau macht PHP das? Anzubieten, dass man setlocale() selbst nutzen kann, ist noch nicht, dass "PHP das macht".
[Ganz einfach schon bei strftime selbst](http://www.cplusplus.com/reference/ctime/strftime/). ctime ist eine solche lib und wird von PHP eingebunden und, ebenso wie andere Funtionen aus der libc, benutzt.
Deswegen auch das Verhalten bezüglich der Prozesse/Threads. Hat man den Webserver "multithreaded" und PHP als Modul bzw. fcgi oder als ähnlichen Prozess am laufen kann es zwar Probleme geben, es wird aber genügen setlocale vor der ersten Ausgabe zu verwenden.