Esto depende de si eres lo suficientemente aventurero. Si comprende el error, significa que su PHP tiene algunos constructores de clase antiguos.
OLD Php Class Constructor
Class myclassname {
function myclassname() {
//This is a constructor
}
Nuevo Php Class Constructor
Class myclassname {
function __construct() {
//this is the new constructor using __construct instead of the same function name as class name.
}
Entonces, lo que hice fue entrar /usr/share/php/php-gettext/stream.php
y /usr/share/php/php-gettext/gettext.php
(o cualquier archivo indicado en su error), ir al archivo y cambiar function myclassname()
a function __construct
.
La función myclassname
debe ser idéntica a la myclassname
declaración CLASS .
Debería ver aproximadamente 4 errores si está en ubuntu 16.04 con el último gettext. Solo cambio eso y no es dañino para su sistema. Es una sintaxis de programación desactualizada y si realiza una actualización en el futuro, tampoco enfrentaría ningún problema. Diré que es una edición segura.
No es realmente un cambio importante ni nada, solo la actualización de sintaxis. Si instala desde el paquete apt-get, realmente no tiene otra opción a menos que lo compile usted mismo.
sudo nano /usr/share/php/php-gettext/streams.php
Error de línea 48 StringReader.
Vaya a la línea 52 y cambie
function StringReader ($str='') {
A
function __construct($str='') {
Error de Line 84 FileReader
Vaya a la línea 90 y cambie
function FileReader($filename) {
a
function __construct($filename) {
Error de línea 145 CacheFileReader
Vaya a la línea 146 y cambie
function CachedFileReader($filename) {
a
function __construct($filename) {
Utilizando sudo nano /usr/share/php/php-gettext/gettext.php
.
gettext_reader {
Error de línea 36
Creo que ahora entiendes lo esencial, ve a la línea 101 y cambia
function gettext_reader($Reader, $enable_cache = true) {
A
function __construct($Reader, $enable_cache = true) {
mcrypt
ymbstring
módulos php y reiniciar Apache. ¿Hiciste eso?