2017-07-18 4 views
0

Ich benutze Zend 1.x. Ich habe folgenden PHP-Fehler.PHP Veraltet: iconv_set_encoding(): Verwendung von iconv.internal_encoding auf StringLength.php

PHP Deprecated: Funktion iconv_set_encoding(): Die Verwendung von iconv.internal_encoding in /cds/PVTS/usoc/library/Zend/Validate/StringLength.php on line 209

veraltet

Ich habe einige gefunden temporäre Lösung für das Problem wie wie folgt:

if (PHP_VERSION_ID < 50600) 
    iconv_set_encoding('internal_encoding', $orig); 
else 
    ini_set('default_charset', $encoding); 

Aber diese Änderung, die ich in jeder zend Bibliotheksdatei ausführen müssen, die dieses Stück Code enthält.

Gibt es eine dauerhafte Lösung für dieses Problem?

+0

Welche PHP-Version verwenden Sie? – MontrealDevOne

+0

PHP Version - 5.6.8 –

Antwort

0

Anstatt ini_set im Code zu verwenden, könnten Sie die php.ini des Servers auf den Servern mit den späteren PHP-Versionen aktualisieren.

Oder wenn bevorzugte Verwendung eine .htaccess-Datei - so etwas wie

AddDefaultCharset UTF-8 
php_value default_charset UTF-8 

Sie noch die veralteten Warnungen erhalten unter Verwendung finden - aber sie können aus zeigt auf der Live-Umgebung unterdrückt werden. Letztendlich ist es die bessere (aber vielleicht weniger praktische) langfristige Lösung, die Version von Zend zu verbessern, die Sie verwenden.

+0

Wenn ich auf Zend 2.x aufrüste, wird dieses Problem gelöst ?? –

+0

Zend 2 ist eine große Neuschreibung und ich habe diese veraltete Warnung nicht mehr verwendet. Wenn es sich um eine existierende Seite handelt, könnte es sein, dass Sie beträchtliche Arbeit zu erledigen haben, um die Seite unter der neuen Version von Zend arbeiten zu lassen. – steve

Verwandte Themen