【问题标题】:count total items in a multidimensional array计算多维数组中的项目总数
【发布时间】:2010-07-23 22:48:20
【问题描述】:

我如何计算下面这个数组中的项目总数?

Array
(
    [upload] => Array
        (
            [name] => Array
                (
                    [0] => 1024x768.jpg
                    [1] => 1280x800.jpg
                    [2] => 1280x1024.jpg
                    [3] => 1440x900.jpg
                )

            [type] => Array
                (
                    [0] => image/jpeg
                    [1] => image/jpeg
                    [2] => image/jpeg
                    [3] => image/jpeg
                )

            [tmp_name] => Array
                (
                    [0] => C:\wamp\tmp\php34FE.tmp
                    [1] => C:\wamp\tmp\php353D.tmp
                    [2] => C:\wamp\tmp\php356D.tmp
                    [3] => C:\wamp\tmp\php35AC.tmp
                )

            [error] => Array
                (
                    [0] => 0
                    [1] => 0
                    [2] => 0
                    [3] => 0
                )

            [size] => Array
                (
                    [0] => 469159
                    [1] => 602230
                    [2] => 739779
                    [3] => 707039
                )

        )

)

这是我的方法,但我认为它很愚蠢!有没有更好的方法/方法来计算数组中的总项目数?

<pre>
<?php if ($_FILES) {print_r($_FILES);}?>
</pre>

<?php 
echo count($_FILES['upload']['name']);

if(empty($_FILES['upload']['name'][0]))
{
    echo '0 file has been uploaded.';
}
?>

非常感谢, 刘

【问题讨论】:

  • 'count();' 有什么愚蠢的?
  • 我不明白这里出了什么问题。这正是计算元素的正确方法。
  • 大声笑可能是我把它弄得太复杂了!只是它可能有另一种更好的方法...... :-)

标签: php arrays count


【解决方案1】:

你的方法当然不傻。如果您想统计无误上传的次数,您可以通过foreach$_FILES['upload']['error'] 确保它们都是0

【讨论】:

  • 编辑 = 错字。在这里检查实际错误是个好主意。
  • @Charles:感谢语法修复。
【解决方案2】:

仅供参考...如果您有一个嵌套的表单元素,$_FILES 数组结构将会改变。

例如。

<input name="mysuperform[image_file]" type="file" />

试试看……也试试:

<input name="mysuperform[images][image_file]" type="file" />

祝你好运。

【讨论】:

    猜你喜欢
    • 2011-07-08
    • 2012-01-07
    • 1970-01-01
    • 1970-01-01
    • 2019-12-11
    • 2022-10-09
    • 2016-08-31
    • 2019-06-16
    • 1970-01-01
    相关资源
    最近更新 更多