mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-12-22 14:41:29 +01:00
fix for php 5.6+ deprecating mbstring.internal_encoding in favor or default_charset
This commit is contained in:
parent
2feacbecb8
commit
2c71852545
@ -532,7 +532,8 @@ class db_backup
|
|||||||
{
|
{
|
||||||
$charset = trim(substr($line,9));
|
$charset = trim(substr($line,9));
|
||||||
// needed if mbstring.func_overload > 0, else eg. substr does not work with non ascii chars
|
// needed if mbstring.func_overload > 0, else eg. substr does not work with non ascii chars
|
||||||
@ini_set('mbstring.internal_encoding',$charset);
|
$ini_default_charset = version_compare(PHP_VERSION, '5.6', '<') ? 'mbstring.internal_encoding' : 'default_charset';
|
||||||
|
@ini_set($ini_default_charset, $charset);
|
||||||
|
|
||||||
// check if we really need to convert the charset, as it's not perfect and can do some damage
|
// check if we really need to convert the charset, as it's not perfect and can do some damage
|
||||||
if ($convert_to_system_charset && !strcasecmp($this->schema_proc->system_charset, $charset))
|
if ($convert_to_system_charset && !strcasecmp($this->schema_proc->system_charset, $charset))
|
||||||
|
@ -86,11 +86,11 @@ class translation
|
|||||||
*/
|
*/
|
||||||
static $mbstring;
|
static $mbstring;
|
||||||
/**
|
/**
|
||||||
* Internal encoding / charset of mbstring (if loaded)
|
* Internal encoding / charset of PHP / mbstring (if loaded)
|
||||||
*
|
*
|
||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
static $mbstring_internal_encoding;
|
static $default_charset;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Application which translations have to be cached instance- and NOT tree-specific
|
* Application which translations have to be cached instance- and NOT tree-specific
|
||||||
@ -138,9 +138,10 @@ class translation
|
|||||||
|
|
||||||
// we need to set our charset as mbstring.internal_encoding if mbstring.func_overlaod > 0
|
// we need to set our charset as mbstring.internal_encoding if mbstring.func_overlaod > 0
|
||||||
// else we get problems for a charset is different from the default utf-8
|
// else we get problems for a charset is different from the default utf-8
|
||||||
if (ini_get('mbstring.func_overload') && self::$mbstring_internal_encoding != $charset)
|
$ini_default_charset = version_compare(PHP_VERSION, '5.6', '<') ? 'mbstring.internal_encoding' : 'default_charset';
|
||||||
|
if (ini_get($ini_default_charset) && self::$default_charset != $charset)
|
||||||
{
|
{
|
||||||
ini_set('mbstring.internal_encoding',self::$mbstring_internal_encoding = $charset);
|
ini_set($ini_default_charset, self::$default_charset = $charset);
|
||||||
}
|
}
|
||||||
return $charset;
|
return $charset;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user