【问题标题】:How To Access Multidimensional Array Elements to Multiply Them如何访问多维数组元素以将它们相乘
【发布时间】:2016-02-28 14:56:49
【问题描述】:

创建一个多维数组,其中包含运输公司可能用来确定箱子体积的几个箱子的测量值(以英寸为单位)。我无法访问我真正想要的元素。我只需要将长度宽度和深度的 3 个整数相乘即可。

    <!DOCTYPE html>
<html>
<head>
    <title>DTD and Box Array</title>
</head>
<body>
    <?php
$boxArray = array   (
                    'Small Box' => array(12, 10, 2.5),
                    'Medium Box' => array(30, 20, 4),
                    'Large Box' => array(60, 40, 11.5)
                    );


echo '<table border="1">';
echo '<tr><th>Length</th><th>Width</th><th>Depth</th></tr>';
foreach ($boxArray as $k => $v)
    {
    echo $k.': '.$v[0].' x '.$v[1].' x '.$v[2].' = ' .$v[0]*$v[1]*$v[2].'<br>'; 
    }

    foreach( $boxArray as $boxArray )
{
    echo '<tr>';
    foreach( $boxArray as $key )
    {
        echo '<td>'.$key.'</td>';
    }
    echo '</tr>';
}

// Length * width * depth - dont know how get the integers.
// This echo isnt grabbing the integers i want

// Multiply small box length * width * height


?>

</body>
</html>

【问题讨论】:

    标签: php arrays html multidimensional-array


    【解决方案1】:

    1) 您似乎覆盖了 foreach 循环中的 $boxArray 变量

    2) echo $boxArray[1][0] , $boxArray[1][0] ,$boxArray[3,0]; 不正确,您需要echo $boxArray[1][0] .','. $boxArray[1][0] .','. $boxArray[3,0];

    3) $boxArray[1][0] 引用字符串“Medium Box”

    4) $boxArray[3,0] 不是正确的键引用,将返回 null

    “Small Box”、“Medium Box”、“Large Box”应该是数组键吗?

    $boxArray = array ( "Small Box" => array(12,10,2.5), etc... )

    我感觉你的本意是这样的:

    $boxArray = array   (
                        'Small Box' => array(12, 10, 2.5),
                        'Medium Box' => array(30, 20, 4),
                        'Large Box' => array(60, 40, 11.5)
                        );
    
    foreach ($boxArray as $k => $v)
        {
        echo $k.': '.$v[0].' x '.$v[1].' x '.$v[2].' = ' .$v[0]*$v[1]*$v[2].'<br>'; 
        }
    

    如果您的数组格式正确:

        foreach ($boxArray as $v)
        {
        echo $v[0].": ".$v[1].' x '.$v[2].' x '.$v[3].' = ' $v[1]*$v[2]*$v[3]; 
        }
    

    【讨论】:

    • 我很感激,我认为 foreach 语法中存在错误,这正是 php 所说的。此外,主要目标是能够获取表中的整数并为每个整数倍增盒子大小。
    • 我编辑了我的代码,也谢谢你,我使用 2 个 foreach 循环 idk,如果那是正确的,但它可以工作。
    猜你喜欢
    • 2021-12-10
    • 2023-03-11
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 2021-08-31
    • 2018-12-11
    相关资源
    最近更新 更多