Eu tenho uma matriz multidimensional com e-mails
$emails = ( "emailid" => array( "email1", "email2" ,"email3" ) );
Eu quero contar a primeira parte ($emails[])
de array multidimensional e segunda parte ($emails[][])
. count($emails)
conta apenas uma matriz inteira.
pode ser que alguém saiba como.
Obrigado!
Respostas:
0 para resposta № 1Você pode usar o COUNT_RECURSIVE
bandeira para mudar como contagem funciona e faz com que ele conte recursivamente todos os itens em sua matriz, independentemente da profundidade. Se você está apenas olhando para obter a contagem dos endereços de e-mail dentro do emailid
sub array, você pode acessá-lo diretamente pela chave.
$emails = ["emailid" => ["email1", "email2", "email3"]];
// recursive count
echo count($emails, COUNT_RECURSIVE); // output 4
// normal count
echo count($emails); // output 1
// normal count using key
echo count($emails["emailid"]); // output 3
0 para resposta № 2
O que sobre isso:
<?php
$emails = array("emailid" => array("email1","email2","email3"));
echo "emails[] = " . count($emails) . "<br />"; // result: 1
echo "emails["emailid"] = " . count($emails["emailid"]); // result: 3
?>