在我的名为promo
的mysql数据库表中,我在列msg
行中有price
,qty
和code
作为示例
code | msg | price | qty
180 | weallwinthem | 150 | 7
180 | yeswellhappy | 520 | 15
180 | wearerunning | 100 | 10
如果所需的qty
msg
不需要str_split
,如何取消设置qty
的行结果?
E:g2
如果msg拆分为we, al, lw, in, th, em
且qty
为7未设置qty
至6
示例3
we, al, lw, in, th, em
qty
6我试过了:
$sql = mysqli_query($conn, "SELECT * FROM promo WHERE code='180' LIMIT 1");
while($row = mysqli_fetch_array($sql)) {
$msg = $row["msg"];
$qty = $row["qty"];
$disp = str_split($msg, 2);
for($b = 0; $b < 2; $b++) {
if(strlen($disp[$b]) != $qty) {
unset($qty[$b]);
$amt += ($row["price"] * $qty);
$so = "uncompleted";
} else {
$so = "$disp[$b]";
echo "','$so $amt";
}
}
感谢我的解决方案中的阅读和影响
答案 0 :(得分:0)
如果msg split为
we, al, lw, in, th, em
且qty
为7未设置数量为6
据我从第二个例子中了解到:
我们可以编写一个&#34;计算&#34;根据{{1}}确定的Qty
。
msg
对于每一行都将运行此函数,如果行的数量是所需数量 - 不需要采取任何操作,否则,我们应该更新行的数量列。
function getDesiredQtyBySplit($msg){
$split = str_split($msg, 2);
$count = count($split);
return $count;
}