doubei2340 2015-06-12 21:15
浏览 114
已采纳

如何在PHP中的foreach循环中返回一个数组[重复]

This question already has an answer here:

I would like to do certain calculation in a function that takes a constant value against different values. To do that I created an array and a variable and also a loop that will take each member of the array and the constant value and pass them to the function that does the calculation. I would like to get an array and then I can do more calculations subsequently.

function subtract($a, $b){
    $c=$b-$a;
    return $c. ',';
    }
    $r=3;
$numbers = array(12, 11, 6, 9);

foreach ($numbers as $index=>$value) {
    $deductions=array(subtract($r, $value));
    //$minimum=min($deductions);
    if (is_array($deductions)){
    //echo $deductions;
    }else{
        //echo "not array";
    }
}
//$minimum=min($deductions);
//echo $minimum;
echo $deductions;

I get "Array" and not 9,8,3,6 Why is this? Any help is greatly appreciated. echo was partial problem, I get Array ( [0] => 6, ) not 9,8,3,6 as I expected?

</div>
  • 写回答

3条回答 默认 最新

  • dongqiu3709 2015-06-12 21:17
    关注

    You cannot echo an array. Try using print_r($deductions) or var_dump($deductions).

    Also, the following line is likely incorrect:

    $deductions=array(subtract($r, $value));
    

    This line will keep replacing the previous $deductions variable so you only end up with one value in your array (6) because 9-3 is 6. If you are wanting to create an array of values you need to add the new value to the array as follows:

    $deductions[] = subtract($r, $value);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号