这取决于您是否足够冒险。如果您理解此错误,则意味着您的PHP具有一些旧的类构造函数。
OLD 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
应与CLASS myclassname
声明相同。
如果您使用最新的gettext在ubuntu 16.04上,应该会看到大约4个错误。我只是改变了它,对您的系统没有害处。这是一种过时的编程语法,如果将来进行升级,也不会遇到任何问题。我会说这是一个安全的编辑。
这并不是真正的重大变化,也不是任何东西,仅仅是语法更新。如果从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
。
第36行gettext_reader {
错误
我想您现在掌握要点,转到101行并进行更改
function gettext_reader($Reader, $enable_cache = true) {
至
function __construct($Reader, $enable_cache = true) {
mcrypt
和mbstring
PHP模块,并重新启动Apache。是你做的吗?