我在单身人类中有以下方法
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 ''; } }
这作为一个普通的功能工作正常
function encode($inp) { if (is_array($inp) { return array_map('encode',rawurlencode($inp)); } else { return ''; } }
当在类里面使用我得到以下错误:
PHP Warning: array_map(): The first
argument,‘$this->rfc_encode’,should
be either NULL or a valid callback
请任何人帮我解决这个问题.
从
PHP Manual on Callbacks:
A method of an instantiated object is passed as an array containing an object at index 0 and the method name at index 1.
所以试试
return array_map(array($this,'encode'),$inp);