Jump to content


Photo

A Desenvoltura Do Php


  • Faça o login para participar
Nenhuma resposta neste tópico

#1 Hábner Nascimento

Hábner Nascimento

    Novato no fórum

  • Usuários
  • 2 posts
  • Sexo:Masculino

Posted 08/10/2009, 13:24

O jeito como o PHP trata as situações e adversidades são no mínimo interessante, o código muitas vezes pode ser entendido de algumas formas o que definitivamente não é bom. Uma expressão não pode ser subjetiva ou "cruze os dedos e torça pra dar certo". O php através de sua irrelutável flexibilidade nos coloca em situações no entanto embaraçosas, tipo:

echo print 3 + 2; // output 51

São questões como essa que nos surpreende, não bastando apenas escrever mas compreender o que escrevemos. Olhando direitinho o código acima faz sentido não é?...faz? o nosso código executa cada função na sua respectiva ordem o que é normal o echo executa print que executa e imprime a expressão 3 + 2 resultando em 5, o retorno do print é sempre 1, logo temos 51 porque print imprime para depois retornar o número 1 que será impresso pelo echo, entendido?.

echo print (3) + 2 * 2; // output 71 porque 2 * 2 = 4 => 4 + 3 = 7
echo print (3 + 2) * 2; // output 101 porque 3 + 2 = 5 => 5 * 2 = 10

tanto o print como o echo são construtores da linguagem o que quer dizer que o uso dos parênteses não são obrigatórios, porém apenas o print retorna algum valor e pode ser usado como parte de uma expressão.

$idade = 18;
echo $idade < 18 ? print 'menor' : print 'maior';

e aí qual a saída do código acima? se você pensou 'maior1' acertou, o que você acha dessa maneira com que o php trata as coisas que muitas vezes para nós é cabuloso?

Edição feita por: Hábner Nascimento, 08/10/2009, 13:31.





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq