在 PHP 中将字符串和数字一起添加(错误!!


adding string and number together in php (FAULT!!)

我对这段从 txt 文件读取订单号的代码几乎没有问题,然后将 1 添加到该数字上。但是,无论自动类型转换如何,PHP 都不会将这些数字相加......

    $handle1 = fopen("ordernumbers.txt", "r");
    $numberoforders = fgets($handle1);
    $numberoforders = trim($numberoforders);
    $orderid=$numberoforders+1;
    echo $orderid;

回显$numberoforders时,返回数字 5(类型为字符串)

当回显$orderid时,它返回 1,而它应该给出 6。

我在这里看不到任何问题,它仍然不起作用。我还尝试将该变量类型从字符串更改为 int,然后将这些数字相加,但结果相同 (1)。

编辑:这是 TXT 文件的内容:https://i.stack.imgur.com/vzk5C.jpg

由于您的var_dump string(4) ''5''存储在$numberoforders中的字符串必须包含另外三个字符。

我怀疑换行符或类似的东西

因为$numberoforders被转换为整数并且其值为0,所以0 + 1 =1这就是您获得的输出。如果要将字符串的字符数添加到整数值中,则需要先计算字符串的长度。

你可以这样得到你的结果

  $handle1 = fopen("ordernumbers.txt", "r");
  $numberoforders = fgets($handle1);
  $numberoforders = trim($numberoforders);
  $numberoforders  = strlen($numberoforders);
  $orderid=$numberoforders+1;
  echo $orderid;