‘'Ello
我正在尝试从一个客户填充的“订单”的项目,以只列出项目,客户已指定的数量值为1或更多,以发送作为采购订单收据,这是生成并通过电子邮件发送,一旦他们点击提交。
这是我到目前为止对这一部分的了解:
$i = 1;
$imax = 4;
echo "Products<br />";
echo "-------------------------------------------------------------<br />";
while ($i <= $imax) {
$itemqty = ${'qty'.$i};
$itempn = ${'pn'.$i};
$itemdesc = ${'desc'.$i};
$itemprice = ${'value'.$i};
$itemtotalprice = ${'elinetotal'.$i};
if ($itemqty !== 0) {
echo $itemqty . " x " . $itemdesc . " (" . $itempn . ") @ $" . $itemprice . " ea. = $" . $itemtotalprice . "<br />";
}
$i++;
}它正确地列出了所有内容,除了它不会忽略值为0的项。它会像这样列出它们:
Products
-------------------------------------------------------------
0 x Item #1 Description (HOSE-12) @ $155.00 ea. = $0.00
5 x Item #2 Description (GAUGE-2) @ $51.00 ea. = $255.00
0 x Item #3 Description (PTC) @ $0.70 ea. = $0.00
10 x Item #4 Description (PT-234R) @ $15.94 ea. = $159.40这可能是最简单的修复方法,但有人能解释一下吗?我将不胜感激!
发布于 2013-03-06 06:23:34
我最初的猜测是字符串'0'是$itemqty。尝试使用不等于运算符,例如
if ($itemqty != 0)而不是不同的运算符,即!==
否则,您可以尝试将$itemqty赋值转换为整数,例如
$itemqty = (int) ${'qty'.$i};https://stackoverflow.com/questions/15235267
复制相似问题