>>17
再帰呼び出しが結果を返していない
return $this->replace_val($value);
としてみなされ