这让我疯了。我花了几个小时试图调试这个,但我无处可去。 $total
1
每次$result != 'REMAKE'
增加$result == 1
,但只有$result == 0
(而不是$total += 1
时)才会增加didAccountWinMatch()
。我无法弄清楚为什么。我试过0
,但没有任何区别。
1
将返回'REMAKE'
,$total = 0;
$wins = 0;
if (isset($match)) {
foreach ($match as $key => $value) {
$result = didAccountWinMatch($accountId, $match[$key]);
if ($result != "REMAKE") {
$total ++;
$wins += $result;
}
}
} else {
$total = 0;
$wins = 0;
}
或<TextBox />
<TextBox.Background>
<ImageBrush x:Name="image_background" Stretch="Fill" TileMode="None" AlignmentX="Left" AlignmentY="Center" />
</TextBox.Background>
</TextBox>
。
image_background.ImageSource = null;
image_background.ImageSource = CreateBitmapSource(System.Windows.Media.Color.FromArgb(255, 0, 0, 0)); // Black Color
答案 0 :(得分:2)
使用!==
代替!=
。如果在整数和字符串之间使用松散比较运算符,则首先将字符串转换为整数。将字符串REMAKE
转换为整数会产生0
,因此代码等同于
if ($result != 0)
$result
是一个整数。
严格比较运算符!==
不执行类型转换;如果操作数是不同的类型,则返回false
。