Grüße an StackOverflow-Gurus!
Hier ist das Problem, mit dem ich Probleme habe.
Ich führe phpinfo () in MAMP aus, und die resultierende Tabelle zeigt "no value" in beiden Spalten der date.timezone-Zeile.
Zusätzlich wird auf der Seite Folgendes angezeigt:
Warnung: phpinfo () [function.phpinfo]: Es ist nicht sicher, sich auf die Zeitzoneneinstellungen des Systems zu verlassen. Sie sind erforderlich , um die Einstellung date.timezone oder die Funktion date_default_timezone_set () zu verwenden. Falls Sie eine dieser Methoden verwendet haben und Sie immer noch diese Warnung erhalten, haben Sie höchstwahrscheinlich die Zeitzonen-ID falsch geschrieben. Wir haben "America / New_York" für "EST / -5.0 / no DST" anstatt in /Applications/MAMP/bin/mamp/phinfo.php
ausgewähltIn der Datei php.ini ist die Einstellung jedoch wie folgt:
date.timezone = Amerika / New_York
Ich sehe die Empfehlung vor zu überprüfen, dass der Pfad zu php.ini korrekt ist - ich habe das schon getan, und der Pfad ist in der Tat richtig: /Applications/MAMP/conf/php5.3/php.ini - das ist die Datei, für die der Wert festgelegt wurde.
Wie kann ich das Problem beheben? Was vermisse ich?
Wäre dankbar für Hilfe von einer sachkundigen Person.
Wenn die Zeitzone in der entsprechenden php.ini-Datei richtig eingestellt ist und Sie immer noch diese Nachricht erhalten, können Sie versuchen, Ihre TZ-Umgebungsvariable einzustellen. Bearbeiten Sie Ihre .profile, um die folgende Zeile hinzuzufügen (sub in Ihrer eigenen Zeitzonenzeichenfolge ):
%Vor%Nicht sicher, warum (a) MAMP überschreibt Ihre php.ini-Einstellung, (b) PHP wirft keinen Hinweis / Warnung bei der Verwendung der TZ env-Variable, obwohl es sagt, aber diese Lösung funktionierte für mich mit MAMP 2.0.5 mit PHP 5.3.6.
Ich weiß, dass ich etwas zu spät dran bin, aber ich sehe auf einigen Seiten, dass Sie nach der richtigen Zeitzone in MAMP fragen.
Es sollte beachtet werden, dass es zwei Stellen für eine php.ini-Datei für die von Ihnen verwendete php-Version gibt. MAMP lädt es möglicherweise von einem anderen Pfad als dem, den Sie bearbeiten.
Nehmen wir zum Beispiel an, wir benutzen PHP 5.3. Hier sind zwei Stellen einer php.ini-Datei, die jemanden verwirren könnte, welcher zu bearbeiten ist.
%Vor%Sie scheinen es an dieser Stelle unten zu bearbeiten:
%Vor% Das Bearbeiten der Zeitzone im zweiten Pfad funktionierte nicht für mich, aber das Editieren der Zeitzone im ersten Pfad. Es kann sein, dass Sie die falsche Datei bearbeiten, obwohl sie gleich aussieht. Ich habe das auf meiner Version getestet. Wenn Sie <?php phpinfo(); ?>
in einer PHP-Datei ausführen und den Pfad der Datei php.ini überprüfen, wird immer der korrekte Pfad angezeigt.
Auch, um nur darauf hinzuweisen, funktioniert die Verwendung von doppelten Anführungszeichen um den Wert von date.timezone. Zum Beispiel in meiner php.ini-Datei funktioniert das.
%Vor%Auch der Standardwert wurde in doppelte Anführungszeichen eingeschlossen.
Ich habe auch die MAMP-Version 2.1.1 verwendet, als ich das getestet habe.
Beachten Sie, dass es verschiedene PHP-Versionen in / Applications / MAMP / conf gibt. Sie sollten überprüfen, welche Version Sie in der MAMP verwenden - & gt; Einstellungen - & gt; Registerkarte "PHP"
Wenn Sie auf 5.4.4 setzen, müssen Sie auf /Applications/MAMP/conf/php5.4.4/php.ini
zugreifen@edit
Im Terminal ausführen:
%Vor%oder
%Vor%Wenn dieser Fehler in der Terminal-CLI-Verwendung von PHP auftaucht, könnte dies ein Problem bei der nativen vs MAMP PHP-Kollision sein.
MacOS X wird mit einer eigenen vorinstallierten PHP-Version geliefert, die in der Shell ausgeführt wird, wenn Sie php
eingeben. Die PHP-Konfiguration von MAMP unterscheidet sich von der vorinstallierten PHP-Konfiguration: Die Änderung der MAMP PHP-Zeitzoneneinstellung wirkt sich nicht auf das aus, was Sie in CLI sehen - daher bleibt der Zeitzonenfehler bestehen. Ein schneller Weg zur Überprüfung ist die Ausführung von which php
- Wenn Sie keinen Pfad sehen, der mit /Applications/MAMP/...
beginnt, müssen Sie Ihre Umgebung anpassen.
Bearbeiten Sie dazu eine Textdatei .profile
(oder bash RC-Datei) und fügen Sie diese Zeile hinzu:
Passen Sie den obigen Pfad an, um auf Ihre gewünschte MAMP PHP-Installation zu zeigen. Dann führe:
%Vor%Dadurch wird die PATH-Änderung sofort angewendet (andernfalls müssten Sie ein neues Terminalfenster öffnen, um Änderungen zu übernehmen). Der zweite Befehl ist nur ein Bash-CLI-Cache-Löschbefehl.
Führen Sie als letzte Überprüfung which php
aus, um zu überprüfen, welcher PHP-Installationspfad verwendet wird. Hoffe das hilft!
In Ubuntu 13.10 mit PHP 5.5.3 Öffne dein Terminal und mache
%Vor%es zeigt zwei Dateien php.ini für mich ergibt es:
%Vor%öffne beide Dateien mit sudo, ich benutze nano
%Vor%finde und bearbeite diese Zeile:
%Vor%und ändern zu:
%Vor%Speichern und schließen Sie diese Datei und bearbeiten Sie ein weiteres
%Vor%finde und bearbeite diese Zeile:
%Vor%und ändern zu:
%Vor%Speichern und schließen und starten Sie Apache mit
%Vor%