php 整数反转不同方法实现

  • Jesse
  • 2016-03-29 17:09:00
  • 3314
整数反转,逆序输出,不用strrev,用不同方法实现,编程的思维

<?php

//数组分割,array_reverse为将数组倒叙
function func1($aa){
    return implode('', array_reverse(str_split($aa)));
}

//递归实现,取余和取整
function func2($aa,$bb=''){
    if($aa>=10){
        $bb.=$aa%10;
        $aa=intval($aa/10);
        func2($aa,$bb);
    }else{
        $bb.=$aa;
        echo $bb;
    }
}

//循环取余和取整
function func3($aa){
    $n = strlen($aa);
    $bb = '';
    for ($i=0; $i <$n ; $i++) {
        $bb .= $aa%10;
        $aa = intval($aa/10);
    }
    return $bb;
}

//循环取余和取整
function func4($n){
    $m = 0;
    while ($n > 0) {
        $m .= $n%10;
        $n = intval($n/10);
    }
    return $m;
}

$abc = 12345;
echo strrev($abc);
echo "<br>";
echo func1($abc);
echo "<br>";
echo func2($abc);
echo "<br>";
echo func3($abc);
echo "<br>";
echo  func4($abc);

?>