Como corrigir o erro "Function create_function() is deprecated" no PhpLdapAdmin
Dica publicada em Linux / Configuração
Como corrigir o erro "Function create_function() is deprecated" no PhpLdapAdmin
Nessa dica vou mostrar como corrigir o erro de "Function create_function() is deprecated" ao se criar entradas no PhpLdapAdmin. Não sei se esse erro já foi corrigido nas novas versões mas me deparei várias vezes com esse tipo de problema e aqui vamos ver como resolvê-lo.
O erro em questão seria esse e que impede a utilização do programa na sua interface web:
Vamos lá então. Abra o Terminal e abra o arquivo:
Na linha 54 troque pelo seguinte:
Na linha 777 coloque esse código:
Mude a linha 1083 para:
Finalmente coloque abaixo da linha 1091 o seguinte conteúdo:
Salve o arquivo e reinicie o serviço do Apache ou reinicie a máquina.
No vídeo abaixo essas mudanças podem ser vistas a partir dos 934 segundos ou 15 minutos e 36 segundos.
O erro em questão seria esse e que impede a utilização do programa na sua interface web:
Vamos lá então. Abra o Terminal e abra o arquivo:
sudo nano /usr/share/phpldapadmin/lib/functions.php
Na linha 54 troque pelo seguinte:
function my_autoload($className) {
Na linha 777 coloque esse código:
spl_autoload_register("my_autoload");
Mude a linha 1083 para:
$CACHE[$sortby] = __create_function('$a, $b',$code);
Finalmente coloque abaixo da linha 1091 o seguinte conteúdo:
function __create_function($arg, $body) {
static $cache = array();
static $maxCacheSize = 64;
static $sorter;
if ($sorter === NULL) {
$sorter = function($a, $b) {
if ($a->hits == $b->hits) {
return 0;
}
return ($a->hits < $b->hits) ? 1 : -1;
};
}
$crc = crc32($arg . "\\x00" . $body);
if (isset($cache[$crc])) {
++$cache[$crc][1];
return $cache[$crc][0];
}
if (sizeof($cache) >= $maxCacheSize) {
uasort($cache, $sorter);
array_pop($cache);
}
$cache[$crc] = array($cb = eval('return
function('.$arg.'){'.$body.'};'), 0);
return $cb;
}
static $cache = array();
static $maxCacheSize = 64;
static $sorter;
if ($sorter === NULL) {
$sorter = function($a, $b) {
if ($a->hits == $b->hits) {
return 0;
}
return ($a->hits < $b->hits) ? 1 : -1;
};
}
$crc = crc32($arg . "\\x00" . $body);
if (isset($cache[$crc])) {
++$cache[$crc][1];
return $cache[$crc][0];
}
if (sizeof($cache) >= $maxCacheSize) {
uasort($cache, $sorter);
array_pop($cache);
}
$cache[$crc] = array($cb = eval('return
function('.$arg.'){'.$body.'};'), 0);
return $cb;
}
Salve o arquivo e reinicie o serviço do Apache ou reinicie a máquina.
No vídeo abaixo essas mudanças podem ser vistas a partir dos 934 segundos ou 15 minutos e 36 segundos.