PHP 递归计算

twtyypeuxk twtyypeuxk 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
如果用递归计算出产品的价格呢?

表 pub_pp_bom_wl结构为:
bom InvCode sh sl jldw check_bom
3090106101112 1020209013112 0.0030000 0.7860000000 米 0
3090106101112 1020209011112 0.0030000 0.2795000000 米 0
3090106101112 30505075004 0.0030000 0.0628360000 个 1
3090106101112 10601006005 0.0030000 1.0000000000 张 0
3090106101112 10601005104 0.0030000 1.5000000000 米 0
3090106101112 10601004104 0.0030000 2.0000000000 个 0
3090106101112 10602002053 0.0030000 1.0000000000 个 0

如果check_bom为1 说明还有下一级,用InvCode字段的值去查bom字段就可以得到下一级的列表。
但我写了好像不能算出价格来,请大家帮我看看那里写错了,谢谢!


function mydg($bom){
global $db;
global $total;
$sql = "SELECT *,InvCode as yclwlbm, InvCode as wlbm FROM `pub_pp_bom_wl` where `bom` ='".$bom."' and `lock` = '0'";
$_list = $db->getAll($sql); //得到材料清单
foreach($_list as $inx=>$_rs){
if(intval($_rs['check_bom']) > 0){
$total += = mydg($_rs['InvCode']);
}else{
$sql = "SELECT unit_price FROM `public_co_material_price` where wlbm = '".$_rs['InvCode']."'";
$unit_price = $db->getOne($sql); //得到单价
if($unit_price==".0000000000") $unit_price = 0;
$total += ($_rs['sl'] * $unit_price) + (($unit_price * $_rs['sh'])*$_rs['sl']);
}
}
return $total;
}

...全文

相关推荐

php使用递归计算文件夹大小

主要介绍了php使用递归计算文件夹大小,代码很简洁使用,这里推荐给大家。

weixin_38748263

使用递归计算文件夹大小的PHP代码

在PHP中,我们可以使用递归算法来计算文件夹的大小。递归是一种函数调用自身的方法,适用于解决问题的重复性或者具有层次结构的问题。通过递归,我们可以遍历文件夹中的所有文件和子文件夹,并计算它们的大小。的函数,该函数接受一个文件夹路径作为参数,并返回该文件夹的大小。函数将文件夹大小格式化为人类可读的单位(例如,KB,MB,GB等),然后将结果打印出来。变量设置为你想要计算大小的文件夹的路径,然后运行这段代码,就可以得到该文件夹的大小。循环遍历这些文件和子文件夹,对于每个文件,我们使用。用于记录文件夹的总大小。

MdlForward

计算文件大小的php代码类.zip

分享一个计算文件大小的php代码类,供朋友们学习和分享,如果有更好的此类PHP文件可以发送给我们一起学习和分享。

weixin_39840650

用PHP来计算某个目录大小的方法

主要介绍了用PHP来计算某个目录大小的方法,需要的朋友可以参考下

weixin_38684509

php检测数组长度函数sizeof与count用法

主要介绍了php检测数组长度函数sizeof与count用法,实例分析了count的用法,并对sizeof函数进行了详尽的分析说明,具有一定的参考借鉴价值,需要的朋友可以参考下

weixin_38737283
评论 10
收藏 已收藏
分享
返回顶部
twtyypeuxk
基础编程 21,889 成员 140,329 内容