Die Funktion TimeZone_version_get wird verwendet, um die Version der TimeZone -Datenbank zu erhalten. Normalerweise gibt es eine Zeichenfolge zurück, die die Versionsnummer der aktuellen Zeitzone -Datenbank im System darstellt. Diese Funktion wird nur von PHP 5.5.0 und höher unterstützt. Wenn Ihre PHP -Version also niedriger ist, können Sie diese Funktion möglicherweise nicht verwenden.
Beispielcode:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">timezone_version_get</span></span><span>();
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Wenn die PHP -Umgebung diese Funktion unterstützt, wird eine ähnliche Zeichenfolge wie 2019.3 zurückgegeben, die die aktuelle Zeitzonendatenbankversion angibt.
Wenn Sie auf das Problem der "Funktion nicht verfügbar" bei der Ausführung der Funktion TimeZone_version_get in PHP stoßen, müssen Sie zunächst die folgenden Punkte beurteilen:
Die Funktion TimeZone_version_get erfordert, dass die PHP -Version mindestens 5.5.0 beträgt. Wenn Sie eine niedrigere PHP -Version als diese Version verwenden, unterstützt das System diese Funktion natürlich nicht. Sie können die aktuelle PHP -Version über den folgenden Code anzeigen:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">'PHP version: '</span></span><span> . </span><span><span class="hljs-title function_ invoke__">phpversion</span></span><span>();
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Wenn die PHP -Version niedriger als 5.5.0 ist, wird empfohlen, PHP auf eine Version zu verbessern, die diese Funktion unterstützt.
Manchmal kann die Funktion TimeZone_version_get deaktiviert sein, die normalerweise durch Änderung der Php.ini -Datei erreicht wird. Sie können das Konfigurationselement deaktiviert_function überprüfen, um festzustellen, ob die Funktion darin aufgeführt ist. Öffnen Sie die Konfigurationsdatei php.ini und suchen Sie nach den folgenden Konfigurationselementen:
<span><span><span class="hljs-attr">disable_functions</span></span><span> = </span><span><span class="hljs-string">"timezone_version_get"</span></span><span>
</span></span>
Wenn das Konfigurationselement TimeZone_version_get enthält, müssen Sie den Funktionsnamen löschen oder die Zeile ausgeben und Ihren PHP -Dienst neu starten.
Die Funktion TimeZone_version_get hängt von der Datumsverwaltung ab, und wenn die Erweiterung nicht aktiviert ist, kann die Funktion nicht verwendet werden. Sie können überprüfen, ob die Erweiterung durch Befolgen des Codes aktiviert ist:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">extension_loaded</span></span><span>(</span><span><span class="hljs-string">'date'</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"date Erweiterung aktiviert\n"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"date Erweiterung nicht aktiviert\n"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Wenn in der Ausgabe "Datumserweiterung nicht aktiviert ist", müssen Sie die Erweiterung in php.ini aktivieren. Suchen Sie die folgenden Konfigurationselemente:
<span><span><span class="hljs-attr">extension</span></span><span>=date.so
</span></span>
Wenn die Zeile kommentiert wird (mit einem Semikolon vor dem ; ), entfernen Sie den Kommentar und starten Sie PHP neu.
Wenn Sie bestätigen, dass die Funktion TIMEZone_version_get deaktiviert oder nicht verfügbar ist, finden Sie hier einige gemeinsame Lösungen:
Wie bereits erwähnt, erfordert die Funktion TimeZone_version_get eine PHP -Version von mindestens 5.5.0. Wenn Sie derzeit eine niedrigere PHP -Version verwenden, wird empfohlen, auf PHP 7.x oder höher zu aktualisieren, um die Kompatibilität und Leistung sicherzustellen.
Überprüfen Sie die Konfiguration disable_functions in php.ini, um sicherzustellen, dass TimeZone_VERSION_GE nicht deaktiviert ist. Sie können die Php.ini -Datei bearbeiten, die Konfigurationszeile löschen, die die Funktion deaktiviert, und den PHP -Dienst neu starten.
Stellen Sie sicher, dass die Datumsverlängerung aktiviert ist, was für die Verwendung von Zeitzonenfunktionen von entscheidender Bedeutung ist. Wenn nicht aktiviert, bearbeiten Sie die Php.ini -Datei, aktivieren Sie die Datumsweiterung und starten Sie PHP neu.
Wenn Ihre PHP -Version zu niedrig ist und nicht aktualisiert werden kann, können Sie andere Methoden verwenden, um Zeitzoneninformationen zu erhalten, z. B. die Verwendung der DateTimezone -Klasse, um die aktuelle Zeitzone zu erhalten:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$timezone</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title class_">DateTimeZone</span></span><span>(</span><span><span class="hljs-title function_ invoke__">date_default_timezone_get</span></span><span>());
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$timezone</span></span><span>-></span><span><span class="hljs-title function_ invoke__">getVersion</span></span><span>();
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Obwohl diese Methode die Versionsnummer der Zeitzonendatenbank nicht erhalten kann, können einige Details zur aktuellen Zeitzone entstehen, die für einige Szenarien geeignet ist.
Die Funktion TimeZone_version_get ist ein nützliches Tool, um die aktuelle TimeZone -Datenbankversion zu erhalten. Wenn Sie auf eine Situation stoßen, in der die Funktion nicht verfügbar ist, überprüfen Sie zunächst, ob die PHP -Version, die Php.ini -Konfiguration und die Zeitzonenweiterung korrekt aktiviert sind. Aktualisieren der PHP -Version, Anpassung der PHP.ini -Konfiguration oder Aktivierung der damit verbundenen Erweiterungen löst normalerweise die meisten Probleme. Wenn keine dieser Methoden möglich ist, sollten Sie eine Alternative verwenden, um Zeitzoneninformationen zu erhalten.