2016-02-29 99 views
0

,如果我有一个这样的数组:长度阵列阵列

$array = array(
    1, 
    2, 
    3, 
    ["thing1", "thing2", "thing3"] 
); 

我该如何检查lenght是数组什么数组([“thing1”,“thing2”,“thing3”] )?

+0

$长度= array_length($阵列[3]); – Unex

+0

你的数组是否总是以这种格式?嵌套数组总是最后一个元素?在它之前,阵列中是否还有更多元素?有很多变数可能会阻止所有提供的解决方案无法正常工作。 – Mikey

回答

6

您可以使用Array Count functioncountsizeof函数。

尝试下面的代码:

$array = array(
    1, 
    2, 
    3, 
    ["thing1", "thing2", "thing3"] 
); 

echo count($array[3]); //out put 3 
echo sizeof($array[3]); //out put 3 
+0

如果你使用这个方法,'count''中的'count'可能比'sizeof'更可取,'sizeof'只是count的别名,并且可能会导致一些程序员混淆,因为它没有做到许多人所期望的至。 – Mikey

3

可以使用count功能:

echo count($array[3]); 

但是,如果你想获得的长度数组并不总是你可以做一些这同一位置像这样:

foreach ($array as $element) { 
    if (is_array($element) { 
     echo count($element); 
    } 
} 
0

,你必须使用count本功能在这里。

$array = array(
    1, 
    2, 
    3, 
    ["thing1", "thing2", "thing3"] 
); 
echo count($array[3]); //out put 3 

虽然你可以使用sizeof但同样的sizeof()是计数(别名),他们的工作一样 。

你可以使用sizeof这样..

echo sizeof($array[3]); //out put 3