função de retorno de chamada php em classe
Por algumas razões, nossa empresa de hospedagem usava o PHP 5.2 e nem sequer tinha o mysqli e o PDO pré-instalados.
Eu não tenho escolha senão reescrever alguma parte do meu código para torná-lo compatível com 5.2.
Então aqui está a minha pergunta:
No PHP 5.2 A função anônima não é suportada, então eu fiz o seguinte teste para ter certeza de que estou mudando o código corretamente:
class foo{
public function toString(){
$arr = array("a", "b");
$arr2 = array("c", "d");
print_r(array_map('mapKeyValue', $arr, $arr2));
}
private function mapKeyValue($v, $k){
return $k."='".$v."'";
}
}
$foo = new foo();
echo $foo->toString();
mas o acima me daria:
Warning: array_map() expects parameter 1 to be a valid callback, function 'mapKeyValue' not found or invalid function name in ....
PHP Warning: array_map() expects parameter 1 to be a valid callback, function 'mapKeyValue' not found or invalid function name in ....
qual é a maneira correta de fazer:
array_map('mapKeyValue', $arr, $arr2);
dentro de uma aula?
PS: É uma razão boa o suficiente para mudar a empresa de hospedagem porque eles usam o PHP 5.2? (Eu consegui um contrato com cerca de 7 meses)