我用PHP从mysql结果中输出一个XML文档,在一列中我有一堆值,但这些都是累加值,即: 1,3,6,8,12,45,etc...but在这里我怎么能只回显出值之间的差异,而不是值本身:
while($row = mysql_fetch_array($result)){
$strXML .= "<set name='".date("G:i:s", strtotime($row["tstamp"]))
. "' value='".$row['steam']."' color='AFD8F8' />";
}有问题的专栏是"steam",我该怎么做呢?
发布于 2011-01-21 19:09:46
你想这样做吗?
$previous = 0;
while($row = mysql_fetch_array($result)){
$difference = $row['steam'] - $previous;
$strXML .= "<set name='".date("G:i:s", strtotime($row["tstamp"]))
. "' value='".$difference."' color='AFD8F8' />";
$previous = $row['steam'];
}假设$row['steam']是单个数字,而不是逗号分隔的列表。
发布于 2011-01-21 19:05:37
$dataArray = explode(',',$row['steam']);
$dataCount = count($dataArray);
$newArray = array();
for($i = 1; $i < $dataCount; $i++) {
$newArray[] = $dataArray[$i] - $dataArray[$i-1];
}
$newData = implode(',',$newArray);https://stackoverflow.com/questions/4757988
复制相似问题