用PHP

时间:2018-11-22 08:54:21

标签: 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

谢谢。

2 个答案:

答案 0 :(得分:2)

假设始终可以安全地忽略前面的字母,您可以这样做:

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

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

preg_replace将从行中过滤掉所有不是数字的内容。稍后我们进行减法运算,并在结果的前面加上一个字母a

答案 1 :(得分:1)

您可以使用以下代码

//$Diff1 = $row['RALL1'] - $row['ALL1'];
$RALL1=ltrim($row['RALL1'],"a");
$ALL1=ltrim($row['ALL1'],"a");
$Diff1 = $RALL1 - $ALL1;
$Diff1="a".$Diff1;
echo "<tr>"; 
  echo "<td>". $Diff1 . "</td>"; 
echo "</tr>";