2014-01-03 2 views
1
Array 
(
[0] => Array 
    (
     [name] => WWW 
    ) 

[1] => Array 
    (
     [name] => Hi 
    ) 

[2] => Array 
    (
     [name] => Hello 
    ) 

[3] => Array 
    (
     [name] => World 
    ) 

) 

У меня есть вышеупомянутый массив, и я хочу подсчитать количество ключей.Подсчет массива ключей

При использовании следующего кода

$temp = array_keys($array); 
echo $temp; 

результат 2 вместо 4 (0,1,2,3). Что я делаю неправильно?

+8

Просто подсчитайте массив: 'count ($ array)'. Всегда есть столько же ключей, сколько есть значений! –

+2

'array_keys' возвращает массив. Итак, как результат может быть «2»? – jszobody

+0

Результат 'echo $ temp;' должен быть '' Array'', так как 'array_keys' возвращает * массив * ключей. –

ответ

-1

Очень простой приятель. Посмотрите это:

$array = array(0 => 100, "color" => "red"); 
print_r(count($array)); 

php.net поможет вам навсегда! ;)

+3

Даже более простой 'echo count ($ array);'. Готово. –

+2

Использование 'array_keys' не требуется. Так используется 'print_r' для целого числа. – jszobody

+0

Очень хорошие друзья! Спасибо за .. Обновление темы. –

4

Вам нужно подсчитать массив, чтобы получить номер:

$arr = array 
    (
     "0" => array 
     (
      "name" =>"WWW" 
     ), 

    "1" => array 
    (
     "name" => "Hi" 
    ), 

    "2" => array 
    (
     "name" => "Hello" 
    ), 

    "3" => array 
    (
     "name" => "World" 
    ) 

    ); 

    $keys_count = count($arr); 
    echo $keys_count; 
4

Просто посчитайте сам массив: count($array).

Всегда есть такое же количество ключей, сколько есть значений!

Смежные вопросы