A única maneira de vermos os dados que o PHP está a processar é enviá-los para o browser como output, desta forma poderemos perceber se os dados estão a ser processados como pretendemos ou não. Existem várias maneiras de o fazer, é isso que neste artigo lhe vamos mostrar, Como enviar dados para o browser com PHP. Neste artigo vamos focar a nossa atenção em 4 maneiras diferentes de enviar dados: echo(), print(), printf() e sprintf(). Apesar de o método de utilização de cada um ser diferente, o resultado final é o mesmo, o envio de dados para o browser.

1. ECHO()

Este é o método mais comum para enviar dados para o browser, e difere um pouco de todos os outros pela sua simplicidade. Aceita um ou mais argumentos separados por vírgulas ( , ) e envia os argumentos para o browser por sequência. A utilização dos parêntesis é opcional, e na maioria das vezes não é utilizada. Considere então o seguinte trecho de código:

<?php
echo "Bem-vindo à ", "Escola Criatividade";
?>

Neste caso temos duas strings, e ambas irão ser concatenadas sendo o output “Bem-vindo à Escola Criatividade”. É possível fazer algo semelhante utilizando variáveis:

<?php
$welcome = "Bem-vindo à ";
$escola = "Escola Criatividade";
echo $welcome, $escola;
?>

O output é exactamente o mesmo, “Bem-vindo à Escola Criatividade”, a única diferença foi a utilização das variáveis $welcome e $escola. Note que na utilização de variáveis não são utilizadas aspas, ao contrário do que acontece com texto.

Uma curiosidade acerca deste método tem a ver com a sua velocidade. Em comparação com outros métodos, echo() provou ser significativamente mais rápido que os demais.

2. PRINT()

Print() é o método mais linear no que toca ao envio de dados para o browser. Ao contrário de echo(), print() apenas aceita um argumento. Veja o exemplo no seguinte trecho de código:

<?php
print ("Bem-vindo à Escola Criatividade");
?>

O output será “Bem-vindo à Escola Criatividade”. Este é um método também bastante simples, embora mais limitado quando comparado com echo(). De notar que é possível utilizar print() sem os parêntesis.

3. PRINTF()

Printf() dá-lhe mais controlo sobre o output, permitindo definir o formato dos dados que serão enviados para o browser, e poderá olhar para esta função como “Print Formatted”. Printf() é especialmente útil quando estamos a lidar com números. Printf() é ótimo quando existe a necessidade de confirmar se os dados que estão a ser processados são apropriados para o tipo de tarefa que estamos a executar. Veja o seguinte trecho de código:

<?php
printf("Bem-Vindo à %s!", "Escola Criatividade");
?>

O output deste código é “Bem-Vindo à Escola Criatividade!” Confuso? Passamos a explicar:

Com o código acima, criámos uma string com formatação “Bem-Vindo à %s!” que contém uma especificação de conversão, que começa com % e  é seguido por especificadores. Neste caso aplicamos um especificador string, que define qual o tipo de dados que estamos a introduzir no argumento. No entanto, a utilização mais frequente e prática com printf() é com números decimais, como com moedas. Veja o exemplo:

<?php
$qtd1 = 1.55;
$qtd2 = 2.55;
$total = $qtd1 + $qtd2;

echo 'O total é $', $total;
?>

O que seria expectável seria que o resultado desse $4.10, no entanto o output seria $4.1 – Necessitamos de especificar que é um numero decimal e que que queremos 2 casas decimais no número. Este processo é simples:

<?php
$qtd1 = 1.55;
$qtd2 = 2.55;
$total = $qtd1 + $qtd2;

echo 'O total é $%.2f', $total;
?>

Neste caso, o output seria “O total é $4.10″, pois utilizámos %.2f para especificar o que pretendíamos.

4. SPRINTF()

Sprintf() funciona da mesma maneira que printf(), a única diferença reside no facto de que enquanto printf() envia a informação directamente para o browser, sprintf() devolve uma string. Uma particularidade relativamente a sprintf() tem a ver com a sua diferenciação em relação à sua utilização. Enquanto que com printf() todo o output era formatado, com sprintf() você tem a possibilidade de formatar apenas algumas partes do output, aplicando a formatação directamente nas variáveis (apenas um exemplo).

<?php
$testeana = sprintf("%.1f", 9);
$testejoao = sprintf("%.1f", 9.5);
echo 'A Ana teve ',$testeana, ' valores, e o João teve ',$testejoao, 'valores.';
?>

Como especificamos que queríamos uma casa decimal, o output seria “A Ana teve 9.0 valores, e o João teve 9.5 valores”. Como se pode verificar acima, o valor na variável $testeana não era 9.0, mas sim 9.

VOCÊ TRABALHA COM PHP?

Você trabalha com PHP? Deixe a sua contribuição a este artigo e aumente o conhecimento dos leitores da Escola Criatividade!

Abraço e até já!

 

Autor: Diogo Espinha

Blog do Autor | Artigos do Autor:

Workaholic e totalmente viciado em computadores, Internet e desporto motorizado. Adora praticar desporto, é um curioso da programação em PHP, CSS e HTML5 e não dispensa a companhia do seu Mac OSX 86 Snow Leopard!

  • Explorer - Factory Construction & Ship Building Joomla Theme
  • Justice - Attorney and Law Firm Joomla Template
  • OwnFolio - One Page Personal Portfolio / vCard / Resume / Showcase Joomla Template
  • Big Business - Responsive Template
  • Merab - Creative Multipurpose Drupal 8 Theme
  • Fitness Academy Joomla Template
  • Fruition - Business Joomla Template
  • Educate | Education & Courses, Kindergartens Joomla Template
  • Constructive - Contractors Multipurpose Joomla Landing Page Theme
  • Vina Bubox - VirtueMart Joomla Template for Online Stores
  • BizOne - One Page Parallax Drupal Theme
  • LawHouse - Responsive Lawyers Attorneys Joomla Template

Gostou deste artigo? Então torne-se fã do Blog no Facebook!



Comentários dos Alunos


  1. Pedro Pinto
    8 de setembro de 2011

    Isto pode ser bastante util mas eu não percebi bem como e onde utilizar.



  2. Bruno Costa
    8 de outubro de 2011

    Uma outra que você não falou ai e eu utilizo muito é o print_r(). Ele é o único que eu conheço que consegue imprimir o resultado de uma array. Uma dica para usa-la melhor, escrevendo assim:
    echo ”;
    print_r($array);
    echo ”;

    O resultado é uma lista com quebra de linhas, mais ou menos assim:

    Array(
    [0] => ‘item1′,
    [1] => ‘item2′
    )

    Até a Próxima!!!


RSS
Twitter
Facebook
Comentários
ASSINANTES
SEGUIDORES
FÃS
COMENTÁRIOS
7794

Subscrever Newsletter
Subscreva a Newsletter:



Aplicativos Android, iPhone e Muito Mais!




Assine a Escola Criatividade Assine a Newsletter da Escola Criatividade Escola Criatividade no Twitter Escola Criatividade no Facebook Escola Criatividade no Youtube Escola Criatividade no Google Buzz