Это зависит от того, достаточно ли вы предприимчивы. Если вы понимаете ошибку, это означает, что ваш PHP имеет несколько старых конструкторов классов.
СТАРЫЙ конструктор класса Php
Class myclassname {
function myclassname() {
//This is a constructor
}
Новый конструктор класса Php
Class myclassname {
function __construct() {
//this is the new constructor using __construct instead of the same function name as class name.
}
Так что я должен был пойти в /usr/share/php/php-gettext/stream.php
и /usr/share/php/php-gettext/gettext.php
(или любой другой файл указано в вашей ошибки), перейдите к файлу и изменения function myclassname()
к function __construct
.
Функция myclassname
должна быть идентична myclassname
объявлению CLASS .
Вы должны увидеть около 4 ошибок, если вы используете Ubuntu 16.04 с последним gettext. Я просто изменяю это, и это не вредно для вашей системы. Это устаревший программный синтаксис, и если вы обновитесь в будущем, вы тоже не столкнетесь с какой-либо проблемой. Я скажу, что это безопасное редактирование.
На самом деле это не серьезное изменение или что-то еще, просто обновление синтаксиса. Если вы устанавливаете из пакета apt-get, у вас действительно не будет другого выбора, если вы не скомпилируете себя.
sudo nano /usr/share/php/php-gettext/streams.php
Строка 48 Ошибка StringReader.
Перейти к строке 52 и изменить
function StringReader ($str='') {
К
function __construct($str='') {
Строка 84 FileReader Ошибка
Перейти к строке 90 и изменить
function FileReader($filename) {
в
function __construct($filename) {
Строка 145 CacheFileReader ошибка
Перейти к строке 146 и изменить
function CachedFileReader($filename) {
в
function __construct($filename) {
Используя sudo nano /usr/share/php/php-gettext/gettext.php
.
gettext_reader {
Ошибка строки 36
Я думаю, вы понимаете суть сейчас, перейдите к строке 101 и измените
function gettext_reader($Reader, $enable_cache = true) {
к
function __construct($Reader, $enable_cache = true) {
mcrypt
иmbstring
php модули и перезапустить apache. Ты сделал это?