当前位置: 首页 > 知识库问答 >
问题:

Symfony 3.4:获取值和求和变量数组值

逑阳泽
2023-03-14

原谅这个词游戏。

我必须循环一个数组并求和值,然后乘以价格(我已经知道如何做到这一点)。

该对象由64个名为val1、val2、val3等的字段组成。。每个字段都有一个简单的带有数量值的\u数组。

我使用条令从数据库中获取这些数据。

    $item = $this->getDoctrine()->getRepository(ExpertationsAdvanced::class)->findBy(['father' => $id]);

    dump($item[0]->getVal1());

        for($i = 1; $i < 64; $i++) {
            dump(${'$item[0]->getVal' . $i . '()'});
            $i++;
            if(${'$item[0]->getVal' . $i . '()'} == null) {
                $return = '0';
            } else {
                $return = array_sum(${'$item[0]->getVal' . $i . '()'} );
            }

            dump($return);
        }

第一次转储返回我请求的数组,没有问题,但在for循环中,我得到了erro注意:未定义变量:$item[0]-

我想我使用了错误的逻辑,但可能工作时间太长,看不到出路。

共有1个答案

章学义
2023-03-14

首先,如果您有64个字段,您应该有(阅读文档了解更多信息):

for($i = 1; $i <= 64; $i++) {

其次,您不需要在循环内部增加$i

$i++;

要获取值,请执行以下操作:

$item[0]->{"getVal{$i}"}();
// OR
$method = "getVal{$i}";
$item[0]->$method();

结果将是:

for($i = 1; $i <= 64; $i++) {
    $array = $item[0]->{"getVal{$i}"}();

    $return = is_array($array) ? array_sum($array) : 0;
    dump($return);
}
 类似资料:
  • 问题内容: 我想知道如何使用带有Flask的Python获取POST / GET请求变量的值。 使用Ruby,我会做这样的事情: 我如何用Flask做到这一点? 问题答案: 你可以从获取表单数据,并从查询字符串数据。

  • 我想知道如何使用Python和Flask来获取POST/GET请求变量的值。 有了Ruby,我会做这样的事情: 我该如何使用烧瓶?

  • 尝试最终得到7个数组($mon、$tue、$wed、$thu、$fri、$sat、$sun),在给定初始数组$hours的情况下,一天中每小时的值为0或1$小时数只是一个发布的数组,包含用户为一周中的每一天选择的小时数。 我认为问题在于我使用变量($$day),因为我的工作日数组都返回null($mon,$tue,$wed,$thu,$fri,$sat,$sun)。 代码: 编辑-使用的结束解决方

  • 给定两个长度为n的有序数组,问题是在O(n)时间内找到它们的和数组的中值,该和数组包含数组A的每个元素和数组b的每个元素之间所有可能的成对和。 例如:设 A[2,4,6] 和 B[1,3,5] 是两个给定的数组。求和数组为 。在 O(n) 中查找此数组的中位数。 解决O(n^2)中的问题非常简单,但是对于这个问题,是否有任何O(n)解决方案? 注意:这是问我的一个朋友的面试问题,面试官很确定它可以

  • 我想获取所选框的值,并将其保存在PHP变量中。我想保存并回显变量。请帮忙