如何向现有条件表达式添加条件?
问题描述:
我让程序员为我的网站写了一个Perl脚本。如何向现有条件表达式添加条件?
其中一项功能是在满足特定条件时更新价格/库存。
# update when price/stock conditions met
if (($force_price_updates == 1) ||
($data->{'price'} <= $product_price && $data->{'quantity'} > 0) ||
($product_quantity == 0 && $data->{'quantity'} > 0)) {
如果新价格较高,上述不做的是不更新价格。它更新股票价值,但如果新股价格更高,我就会失去。股票得到更新,但价格不是。
该脚本通过多个订阅源,并且如果在任何订阅源中找到相同的产品,脚本应根据上述规则修改价格/库存更改。
我找不到程序员,我的Perl知识有限。我明白代码在做什么,但不知道如果价格更高,股价大于零,应该怎么做。
答
您可以将您要查找的额外条件添加到该语句中。
你正在寻找匹配的条件是:
$data->{'price'} > $product_price && $product_quantity > 0
所以最终版本是这样的:
if (($force_price_updates == 1) || ($data->{'price'} <= $product_price && $data->{'quantity'} > 0) || ($product_quantity == 0 && $data->{'quantity'} > 0) || ($data->{'price'} > $product_price && $product_quantity > 0)) {
哪一个是新的价格是多少? '$ data - > {price}'或'$ product_price'? – mob
$ data - > {price}是新的价格 – user957263
考虑添加换行符以使其更具可读性!当一切都很大时,真的很难看到运营商的优先级 – plusplus