当移至 PHP 中的下一个记录集时,变量值会自动递增

发布于 2024-10-04 07:54:38 字数 1122 浏览 11 评论 0原文

我正在从 MS-SQL 数据库中获取值。我正在为名为 $SeqNumCur 的变量分配一个值。处理该记录的数据后,我将该值存储在名为 $SeqNumPrev 的变量中。我这样做是为了检查先前值和当前值之间的差异是否仅为 1。如果不是,我必须设置警报。但是在设置上一个变量之后,当移动到下一个记录时,两个变量都会发生变化。锄头阻止这一切。下面是代码和输出。

$NoSeqErr = 0;
$SeqNumPrev = 0;
$SeqNumCur = 0;
while (!$Rs_Data_SP1->EOF)              
// Loop through records while there is data
{

echo "<tr >";

// increment record number
$NoSeqErr = 0;
$SeqNumCur = $Rs_Data_SP1->Fields('c_PieceName');
$NoSeqErr = $SeqNumCur - $SeqNumPrev;

echo '<br> Prev:'.$SeqNumPrev;
echo '<br> Cur:'.$SeqNumCur;
echo '<br> Err:'.$NoSeqErr;


$SeqNumPrev = $SeqNumCur;


$Rs_Data_SP1->MoveNext();                    
// Move on to next data record in the set

}

**

输出

Prev:0
Cur:200331098
Err:200331098 

Prev:200331099
Cur:200331099
Err:0   

Prev:200331100
Cur:200331100
Err:0   

Prev:200331101
Cur:200331101
Err:0   

Prev:200331102
Cur:200331102
Err:0   

Prev:200331103
Cur:200331103
Err:0   

Prev:200331104
Cur:200331104
Err:0   

Prev:200331105
Cur:200331105
Err:0 

**

I am fetching values from MS-SQL database. I am assigning a value to a variable called $SeqNumCur. After processing data for this record I am storing this value in a variable called $SeqNumPrev. I am doing this to check if difference between previous value and current value is only 1. If not I have to set up an alarm. But after setting previous variable, and when moved to next record, both variables are getting changed. Hoe to stop this. Below is code and also output.

$NoSeqErr = 0;
$SeqNumPrev = 0;
$SeqNumCur = 0;
while (!$Rs_Data_SP1->EOF)              
// Loop through records while there is data
{

echo "<tr >";

// increment record number
$NoSeqErr = 0;
$SeqNumCur = $Rs_Data_SP1->Fields('c_PieceName');
$NoSeqErr = $SeqNumCur - $SeqNumPrev;

echo '<br> Prev:'.$SeqNumPrev;
echo '<br> Cur:'.$SeqNumCur;
echo '<br> Err:'.$NoSeqErr;


$SeqNumPrev = $SeqNumCur;


$Rs_Data_SP1->MoveNext();                    
// Move on to next data record in the set

}

**

OUTPUT

Prev:0
Cur:200331098
Err:200331098 

Prev:200331099
Cur:200331099
Err:0   

Prev:200331100
Cur:200331100
Err:0   

Prev:200331101
Cur:200331101
Err:0   

Prev:200331102
Cur:200331102
Err:0   

Prev:200331103
Cur:200331103
Err:0   

Prev:200331104
Cur:200331104
Err:0   

Prev:200331105
Cur:200331105
Err:0 

**

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

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

发布评论

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

评论(1

你げ笑在眉眼 2024-10-11 07:54:38

我解决了。

我使用下面的行

$SeqNumPrev = $SeqNumCur - 0;

而不是

$SeqNumPrev = $SeqNumCur;

我不知道为什么,也许有人可以解释。

I got it solved.

I used below line

$SeqNumPrev = $SeqNumCur - 0;

instead of

$SeqNumPrev = $SeqNumCur;

I dont why, perhaps somebody can explain.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文