PHP 中文件中的数字总和

发布于 2025-01-09 15:05:37 字数 311 浏览 0 评论 0原文

给定一个包含数字的文件,我需要使用 PHP 计算并显示它们的总和。这是我到目前为止所做的,但显示的结果不正确。我做错了什么?

<?php
$file = fopen('file.txt', 'r');
$sum = 0;

while(!feof($file)){
    $num = (int) fgetc($file);
    $sum = $sum + $num;
}

echo $sum;
fclose($file);

?>

该文件如下所示:

1 3 10 7 9

Given a file with numbers, I need to calculate and display their sum using PHP. This is what I have done so far, but the result displayed is not correct. What am I doing wrong?

<?php
$file = fopen('file.txt', 'r');
$sum = 0;

while(!feof($file)){
    $num = (int) fgetc($file);
    $sum = $sum + $num;
}

echo $sum;
fclose($file);

?>

The file looks like this:

1 3 10 7 9

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

简单气质女生网名 2025-01-16 15:05:37

您可以创建一个值数组并返回数组的总和。

$file = fopen('file.txt', 'r');
$values = [];

while(!feof($file)){
    $values = array_merge(explode(' ', $file), $values);
}

echo array_sum($values);
fclose($file);

You can create an array of values and return the sum of the array.

$file = fopen('file.txt', 'r');
$values = [];

while(!feof($file)){
    $values = array_merge(explode(' ', $file), $values);
}

echo array_sum($values);
fclose($file);
眼角的笑意。 2025-01-16 15:05:37

替代答案:

$file = trim(file('file.txt')[0]);
$sum = array_sum(explode(' ', $file));

var_dump($sum);

Alternative answer :

$file = trim(file('file.txt')[0]);
$sum = array_sum(explode(' ', $file));

var_dump($sum);
魂牵梦绕锁你心扉 2025-01-16 15:05:37

试试这个代码,它会工作得很好

$file = fopen('num.txt', 'r');
  $sum = 0;
  $lc =0;   //last char
  $cc = ''; //current char
  while(!feof($file)){
      $cc = (int) fgetc($file);
      if($cc == ' '){
        $sum = $lc + $sum;
        $lc = ' ';
      }else if($cc != ' '){
          $lc = $lc+$cc;
      }
  }
  echo $sum;
  fclose($file);

try this code, it will work fine

$file = fopen('num.txt', 'r');
  $sum = 0;
  $lc =0;   //last char
  $cc = ''; //current char
  while(!feof($file)){
      $cc = (int) fgetc($file);
      if($cc == ' '){
        $sum = $lc + $sum;
        $lc = ' ';
      }else if($cc != ' '){
          $lc = $lc+$cc;
      }
  }
  echo $sum;
  fclose($file);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文