Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
函数在PHP中未按预期工作_Php - Fatal编程技术网

函数在PHP中未按预期工作

函数在PHP中未按预期工作,php,Php,此函数的输出有什么问题,它在浏览器中打印INF int,如下所示: 我希望它能打印出654321 用C#编写的函数与预期结果完全相同 <?php function reverse($n, $r){ if($n == 0) { return $r; } return reverse($n/10, $r*10 + $n%10); } echo

此函数的输出有什么问题,它在浏览器中打印INF int,如下所示: 我希望它能打印出654321 用C#编写的函数与预期结果完全相同

<?php
        function reverse($n, $r){
            if($n == 0) {
                return $r;
            }
            return reverse($n/10, $r*10 + $n%10);
        }

        echo reverse(123456, 0);
?>

尝试以下功能:

strrev('123456'); //654321
尝试以下功能:

strrev('123456'); //654321

它不进行整数除法。在C#中,您需要处理严格的键入,当您在C#中将25除以4时,您将得到整数结果,6。在php中,您将得到6.25,浮点结果


在递归之前尝试
intval
您的结果以获得整数除法

它不进行整数除法。在C#中,您需要处理严格的键入,当您在C#中将25除以4时,您将得到整数结果,6。在php中,您将得到6.25,浮点结果


在递归之前尝试
intval
您的结果以获得整数除法

好吧,PHP不是C#。如果要反转字符串(或数字),只需使用内置的
strev
。尝试
reverse((int)($n/10),$r*10+($n%10))好吧,PHP不是C#。如果要反转字符串(或数字),只需使用内置的
strev
。尝试
reverse((int)($n/10),$r*10+($n%10))谢谢,这就是答案expected@juice然后请点击本答案投票符号下方可见的勾号符号谢谢,这是答案expected@juice然后请点击此答案投票符号下方可见的勾号符号