tengo el siguiente método en una clase Singletoncómo utilizar un método de objeto como una función de devolución de llamada
private function encode($inp)
{
if (is_array($inp) {
return array_map('$this->encode', $inp);
} else if is_scalar($inp) {
return str_replace('%7E', rawurlencode($inp));
} else {
return '';
}
}
esto funciona bien como una función ordinaria
function encode($inp)
{
if (is_array($inp) {
return array_map('encode', $inp);
} else if is_scalar($inp) {
return str_replace('%7E', rawurlencode($inp));
} else {
return '';
}
}
cuando se utiliza dentro de una clase i' m obteniendo el siguiente error:
PHP Warning: array_map(): The first argument, '$this->rfc_encode', should be either NULL or a valid callback
Por favor alguien podría ayudarme a solucionar esto.
Gracias amigo, funcionó. – Kaartz
Además, el método 'encode' debe ser [public] (http://php.net/manual/en/language.oop5.visibility.php). – Dejv
@Dejv En realidad, lo he probado con un ** método de clase privado ** y funciona bien. Estoy usando PHP 7.0.13. – sentenza