当前位置:Gxlcms > PHP教程 > 初学者问个简单的逻辑有关问题,求解答

初学者问个简单的逻辑有关问题,求解答

时间:2021-07-01 10:21:17 帮助过:24人阅读

菜鸟问个简单的逻辑问题,求解答
我是想实现62进制的功能,可是下面这段代码只能echo出来,不能返回,不知道是什么原因,求高手解答


function dwz($id,$str=""){
$a=array("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
$zs=(int)($id/sizeof($a));
$xs=$id%sizeof($a);
if($zs>=sizeof($a)){
$str=$a[$xs].$str;
dwz($zs,$str);
}
else{
if($str==""){
return $a[$zs].$a[$xs];
}
else{
echo $a[$zs].$str;//这里只能
输出
return $a[$zs].$str;//返回没值,不知道什么原因
}
}
}
for($i=999990;$i<=1000000;$i++){
echo dwz($i);
echo "
";
}
逻辑 菜鸟 简单的

分享到:


------解决方案--------------------
第7行 dwz($zs,$str);
没有承接返回
$str = dwz($zs,$str);

函数结束处还需要有 return $str;

------解决方案--------------------

if($zs>=sizeof($a)){
$str=$a[$xs].$str;
dwz($zs,$str); //这里加入return: return dwz($zs, $str);
}

人气教程排行