我有以下代码:
$item['price'] = 0;
/* Code to get item information goes in here */
if($item['price'] == 'e') {
$item['price'] = -1;
}
它的目的是将商品价格初始化为0,然后获取有关它的信息。如果价格被告知为“ e”,它意味着一个交易所而不是一个卖出,这是存储在数据库中的一个负数。
也有可能将价格保留为0,或者因为该项目是一个奖金,或者因为价格将在稍后设置。
但是,如果没有设置 price,使其初始值为0,则上面指示的 if
循环的计算结果为 true,price 被设置为 -1。也就是说,它认为0等于“ e”。
这怎么解释呢?
当价格提供为0(在初始化之后)时,行为是不稳定的: 有时 if 计算为 true,有时它计算为 false。*