public function randRateCode()
{
$rate = randpw(); //随机生成一个字符串
$rs = $this->Agent->where("rate='".$rate."'")->find();
//查询这个字符串在数据库中是否纯在
if($rs){
//如果存在
$rate = $this->randRateCode();
}
return $rate;
}
代码如上,我随机生成一个字符串,然后去数据库匹配,如果匹配到,则递归该方法,最后返回这个字符串
我的问题是
我最终return的值,是合法的(数据库不存在的)还是不合法的(数据库存在的),为什么!为什么!为什么!
我是这么理解的,最终 return 是合法的
因为当不合法的时候,return 保留执行(没有立即执行),当合法的时候,立即执行 return ,函数在return后立即终止,不会再去执行之前未执行的 return …
www说
SMILET