首页 > 解决方案 > 用 PHP 减去字母数字值

问题描述

我有一些数据是字母数字值,我的代码是这样的:

$Diff1 = $row['RALL1'] - $row['ALL1'];

echo "<tr>"; 
  echo "<td>". $Diff1 . "</td>"; 
echo "</tr>"; 

这里的 RAll 和 All 值是字母数字字符,并且都以单个字母“a”开头,并以数字开头。例如,a14、a5、a2 等。

如果上面的输出$Diff1是这样的:$Diff1 = a10 - a2,我怎样才能用 PHP 得到这个减法的结果?在这种情况下,它应该是

$Diff1 = a10 - a2 = a8

谢谢。

标签: php

解决方案


假设前面的字母总是可以安全地忽略,你可以这样做:

$first = (int) preg_replace('/[^\d]/', '', $row['RALL1']);
$second = (int) preg_replace('/[^\d]/', '', $row['ALL']);

$Diff1 = 'a' . ($first - $second);

preg_replace过滤掉行中不是数字的任何内容。稍后我们进行减法并在结果前面加上一个字母,这里a


推荐阅读