Questo dipende se sei abbastanza avventuroso. Se capisci l'errore, significa che il tuo PHP ha alcuni costruttori di vecchia classe.
Costruttore di classe PHD OLD
Class myclassname {
function myclassname() {
//This is a constructor
}
Nuovo costruttore di classe Php
Class myclassname {
function __construct() {
//this is the new constructor using __construct instead of the same function name as class name.
}
Quindi quello che ho fatto è stato quello di andare in /usr/share/php/php-gettext/stream.php
e /usr/share/php/php-gettext/gettext.php
(o qualsiasi altra cosa il file indicato nel vostro errore), passare al file e cambiare function myclassname()
a function __construct
.
La funzione myclassname
dovrebbe essere identica alla myclassname
dichiarazione CLASS .
Dovresti vedere circa 4 errori se sei su Ubuntu 16.04 con l'ultimo gettext. Lo cambio e non è dannoso per il tuo sistema. È una sintassi obsoleta di programmazione e se esegui l'aggiornamento in futuro non dovresti affrontare alcun problema. Dirò che è una modifica sicura.
Non è davvero un grande cambiamento o altro, solo l'aggiornamento della sintassi. Se installi dal pacchetto apt-get, non hai altra scelta se non compilare te stesso.
sudo nano /usr/share/php/php-gettext/streams.php
Riga 48 Errore StringReader.
Vai alla riga 52 e cambia
function StringReader ($str='') {
PER
function __construct($str='') {
Riga 84 Errore FileReader
Vai alla linea 90 e cambia
function FileReader($filename) {
per
function __construct($filename) {
Riga 145 Errore CacheFileReader
Vai alla riga 146 e modifica
function CachedFileReader($filename) {
per
function __construct($filename) {
Usando sudo nano /usr/share/php/php-gettext/gettext.php
.
gettext_reader {
Errore linea 36
Penso che tu abbia capito subito, vai alla riga 101 e cambia
function gettext_reader($Reader, $enable_cache = true) {
Per
function __construct($Reader, $enable_cache = true) {
mcrypt
embstring
php i moduli e riavviare apache. Sei stato tu?