Хочу написать функцию типа strlen(), да чё-то рекурсия не поддаётся =\
function myStrlen($str){
if($str===true) return 1;
if(is_array($str)) return 0; //Здесь бы какую-нибудь ошибку инициализировать типа Warning ... как сделать?
$str=(string)$str;
static $cnt=0;
if (!is_null($str{$cnt})) { //Проверка на конец строки. Может неправильное условие?
$cnt++;
myStrlen($str);
}
else return $cnt;
}
Понятно, что можно и без рекурсии гораздо легче:
for($cnt=0; $str{$cnt}; $cnt++);
return $cnt;
Но всё же, почему бесконечная рекурсия получается?