获取在PHP数字的总和获取在PHP数字的总和(Get the sum of digits in PH

2019-05-12 04:22发布

如何找到在PHP中的号码的所有数字的总和?

Answer 1:

array_sum(str_split($number));

这假定数量是正的(或,更准确地,该转化$number成字符串仅生成位数)。



Answer 2:

Artefactos方法显然是无与伦比的,但这里的一个版本如何能做到这一点“手动”:

$number = 1234567890;
$sum = 0;
do {
    $sum += $number % 10;
}
while ($number = (int) $number / 10);

这实际上是比Artefactos方法(至少对于快1234567890 ),因为它节省了两个函数调用。



Answer 3:

另一种方式,没有那么快,不是单行简单

<?php

    $n = 123;
    $nstr = $n . "";

    $sum = 0;
    for ($i = 0; $i < strlen($nstr); ++$i)
    {
        $sum += $nstr[$i];
    }
    echo $sum;

?>

它还假定的数字为正。



Answer 4:

试试下面的代码:

<?php

$num = 525;
$sum = 0;

while ($num > 0)
{
    $sum= $sum + ($num % 10);
    $num= $num / 10;
}
echo "Summation=" . $sum;

?>


Answer 5:

如果有兴趣与正则表达式:

array_sum(preg_split("//", $number));


Answer 6:

假设你想找到的号码数字总和说2395最简单的解决办法是先被分割数字,找出和再串接所有数字到一个单一的数字。

<?php
    $number=2;
    $number1=3;
    $number2=9;
    $number3=5;
    $combine=$number.$number1.$number2.$number3;
    $sum=$number+$number1+$number2+$number3;
    echo "The sum of $combine is $sum";
     ?>


Answer 7:

    <?php
echo"----Sum of digit using php----";
echo"<br/ >";
$num=98765;
$sum=0;
$rem=0;
for($i=0;$i<=$num;$i++)
{
$rem=$num%10;
$sum=$sum+$rem;
$num=$num/10;
}
echo "The sum of digit 98765 is ".$sum;
?>
-----------------Output-------------
----Sum of digit using php----
The sum of digit 98765 is 35


Answer 8:

// math before code 

// base of digit sums is 9 

// the product of all numbers multiplied by 9 equals 9 as digit sum

$nr = 58821.5712; // any number

// Initiallization 

$d = array();

$d = explode(".",$nr); // cut decimal digits

$fl = strlen($d[1]); // count decimal digits

$pow = pow(10 ,$fl); // power up for integer

$nr = $nr * $pow; // make float become integer

// The Code

$ds = $nr % 9; // modulo of 9 

if($ds == 0) $ds=9; // cancel out zeros

echo $ds;


Answer 9:

<html>
<head>
<title>detail</title>
</head>
<body>
<?php
$n = 123;
$sum=0; $n1=0;

  for ($i =0; $i<=strlen($n);$i++)
 {

  $n1=$n%10;

   $sum += $n1;
   $n=$n/10;
  }
 echo $sum;

 ?>
 </body>
</html>


Answer 10:

下面的代码。请试试这个

   <?php 
    $d=0;
   $num=12345;

   $temp=$num;

   $sum=0;

   while($temp>1)

     {
      $temp=$temp/10;

        $d++;
         }

     echo "Digits Are : $d </br>";

      for (;$num>1;)

             {
              $d=$num%10;

             $num=$num/10;

             $sum=$sum+$d;

             }

           echo "Sum of Digits is : $sum";

   ?>


文章来源: Get the sum of digits in PHP
标签: php string sum