Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola, comecei a pouco tempo a estudar PHP e me interesse muito mas ja estou tendo problemas.
No codigo abaixo fiz uma matriz (array) e quero que ela verifique se o nome é verdadeiro mas a unica coisa que imprime no navegador é o ELSE (Não é o Joelson) sendo que deveria imprimir o IF.
<?php
$matriz_eddye = array (
0=>" Joelson ",
1=>" Victor ",
2=>" Vanessa ",
3=>" Sara ",
4=>" Rosiane ",
5=>" Priscila ",
6=>" Eddye ",
7=>" Ildone ",
8=>" Talita "
);
foreach ($matriz_eddye as $eddye)
if ($eddye == "Joelson"){
echo "É o Joelson";
} else {
echo "Não é o Joelson";
}
?>
Sabem o que esta acontencedo? Eu nao acho erro nenhum.
>
Não podes passar todos os valores a uma só variável e depois fazer a comparação com apenas um IF...
PHP
<?php$matriz_eddye = array (
0=>" Joelson ",
1=>" Victor ",
2=>" Vanessa ",
3=>" Sara ",
4=>" Rosiane ",
5=>" Priscila ",
6=>" Eddye ",
7=>" Ildone ",
8=>" Talita "
);
if ($matriz_eddye[0] == "Joelson"){
[echo](http://br.php.net/echo) "É o Joelson";
} else {
[echo](http://br.php.net/echo) "Não é o Joelson";
}
?>
Pronto ;)
Então Gabriel, ele continua imprimindo o echo do else. Parece que nao verifica o if.
O correto, neste codigo, deve imprimir "É o Joelson" certo? Mas ele imprimi "Não é o Joelson."
Imagino que ele queira testar todos os nomes do array, por isso o uso do foreach(). ;)
Está certo o seu código sim Joelson, mas perceba que nos nomes do array, existe um espaço no início e no final do nome, e quando você faz a comparação, não. Ai que está a diferença, consequentemente está dando tudo "Não é o Joelson".
Flws...
;)
Mais perceba que ele não usa o IF($var === "string"){} que no caso seria SE $VAR FOR IDENTICO A STRING....
portanto penso que não faz diferença amigo ;)
Joelson, podes usar a função
PHP
trim(); que elimina os espaços para ver se ta correto, ou então retira os espaços, mais creio que não é isso.
Faça o teste. ;)
<?php
if( "Paulo" == " Paulo " )
{
echo "Igual";
}
else
{
echo "Não é igual";
}
?>>
Imagino que ele queira testar todos os nomes do array, por isso o uso do foreach(). ;)
Está certo o seu código sim Joelson, mas perceba que nos nomes do array, existe um espaço no início e no final do nome, e quando você faz a comparação, não. Ai que está a diferença, consequentemente está dando tudo "Não é o Joelson".
Flws...
;)
Frenesi, funcionou, realmente faltou o espaco.No navegador agora é impresso todos nomes verificando 1 a 1. Como faço para ele imprimir apenas 1 resultado. O codigo usado foi o abaixo.
>
<?php
$matriz_eddye = array (
0=>" Joelson ",
1=>" Victor ",
2=>" Vanessa ",
3=>" Sara ",
4=>" Rosiane ",
5=>" Priscila ",
6=>" Eddye ",
7=>" Ildone ",
8=>" Talita "
);
foreach ($matriz_eddye as $eddye)
if ($eddye == " Joelson "){
echo "É o Joelson";
} else {
echo "Não é o Joelson";
}
?>Neste caso, indico outra maneira de fazer esta verificação, veja:
<?php
$matriz_eddye = array (
0=>" Joelson ",
1=>" Victor ",
2=>" Vanessa ",
3=>" Sara ",
4=>" Rosiane ",
5=>" Priscila ",
6=>" Eddye ",
7=>" Ildone ",
8=>" Talita "
);
if( in_array(" Joelson ", $matriz_eddye) )
{
echo "Possui 'Joelson' na matriz";
} echo "Não possui 'Joelson' na matriz";
}
?>Vlw Frenesi, ajudou muito mesmo ;)
So mais uma duvida! Como faco para imprimir apenas alguns nomes da matriz, por exemplo
>
<?php
$matriz_joelson = array (0=>" Joelson ",1=>" Eduardo ",2=>" Cesar ");
foreach ($matriz_joelson as $nome)
echo "$nome";
?>
So quero imprimir os nomes dos indices 0 e 2. Com o echo "$nome" ele imprime todos os nomes.Neste caso você pode pegar de um por um:
$matriz_joelson[0]
$matriz_joelson[2]
Entre os colchetes você indica a chave do valor que você quer.
>
Neste caso você pode pegar de um por um:
$matriz_joelson[0]
$matriz_joelson[2]
Entre os colchetes você indica a chave do valor que você quer.
Vlw Frenesi! Sem mais duvidas por enquanto...
Abraco http://forum.imasters.com.br/public/style_emoticons/default/joia.gif
Frensei, valeu ai.. eu achava que tipo, só se ele usar if($var ===) ...
por isso pensava que não faz diferença.
Abraço.
Não podes passar todos os valores a uma só variável e depois fazer a comparação com apenas um IF...
PHP
<?php$matriz_eddye = array (
0=>" Joelson ",
1=>" Victor ",
2=>" Vanessa ",
3=>" Sara ",
4=>" Rosiane ",
5=>" Priscila ",
6=>" Eddye ",
7=>" Ildone ",
8=>" Talita "
} else {
Pronto ;)