问下大佬一个PHP计算的问题

ricewell2022-07-29  618

邮箱里翻到个十几年前的一段ASP代码,闲得无聊,试试能不能用PHP弄出来,结果卡壳了。

比如数据库有整数字段 a1  a2  a3 ...

前台输入框输入  a1+a2... 等各种加减算式  怎么循环显示计算的结果呢

转载请注明原文地址:https://www.wellcms.net/read-362.html
00
最新回复(6)
  • 这是两个字段,你是怎么加?
    a1字段总和 + a2字段总和

    还是a1 +a2 同一行

    要看先计算列还是只计算行字段
    回复00
  • 比如

     id  a1  a2  a3 ...
     1   5    6    7
     2   5    2    8
     3   9    6    5


    计算 a1 + a2 等算式的同一行

    输出结果应该是  

    11
    7
    15

    jisuan = request.QueryString("jisuan")
    
    jisuan = replace(replace(jisuan,"[jia]","+"),"[jian]","-")  //前台用JS做了加减号的处理
    
    select "&jisuan&" as jieguo from shuju order by id asc
    
    后面循环数组就可以了

    这时原ASP代码

    回复00
  • 你这需求 用sql做 不是更快
    回复00
  • 你这asp也是用的sql计算的
    回复00
  • $arr = db_find('不带前缀的表', array(), array('id' => -1), '页数是数字', '每页查询数量是数字');
    
    foreach ($arr as $val) {
        echo $val['a1'] + $val['a2'];
    }

    如果是想前端使用下面的代码,total 是相加后的结果,前端拿到对象之后再循环就行了。

    foreach ($arr as &$val) {
        if (!isset($val['total'])) {
            $val['total'] = $val['a1'] + $val['a2'];
        }
    }
    
    // 把数组转json给前端
    exit(xn_json_encode($arr));

    不知道是不是要你的

    回复00
  • 感谢楼上两位的回复。

    算式是不固定的,所以冰大的方法不合适,我原来的想法是能不能在前台输入框那里给+-号两边插入特定字符,然后后端来分割,再拼起来计算,但感觉好麻烦,也不一定行得通。

    只能用倚楼的建议用SQL弄了,确实更简单些。

    回复00