array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'pt_BR', ), 'this' => array ( 0 => 'function.print.php', 1 => 'print', ), 'up' => array ( 0 => 'ref.strings.php', 1 => 'Funções de String', ), 'prev' => array ( 0 => 'function.parse-str.php', 1 => 'parse_str', ), 'next' => array ( 0 => 'function.printf.php', 1 => 'printf', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'pt_BR', 'path' => 'reference/strings/functions/print.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
print — Mostra uma string
Mostra o conteúdo de expression
.
print
não é uma função, é uma construção de linguagem.
Seu argumento é a expressão logo após da palavra-chave print
,
e não é delimitada por parênteses.
As principais diferenças para echo são que
print
aceita apenas um único argumento e sempre retorna
1
.
expression
A expressão a ser mostrada. Valores não-string serão convertidos coercitivamente para strings,
mesmo quando a diretiva
strict_types
estiver habilitada.
Retorna 1
, sempre.
Exemplo #1 Exemplos print
<?php
print "print não requer parênteses.";
// Não é adicionado espaço ou quebra de linha; o exemplo abaixo mostra "olámundo" em uma só linha
print "olá";
print "mundo";
print "Este string ocupa
múltiplas linhas. As quebras de linha
também serão mostradas.";
print "Este string ocupa\nmúltiplas linhas. As quebras de linha\ntambém serão mostradas.";
// O argumento pode ser qualquer expressão que produza uma string
$foo = "exemplo";
print "foo é um $foo"; // foo é um exemplo
$frutas = ["limão", "laranja", "banana"];
print implode(" e ", $frutas); // limão e laranja e banana
// Expressões não string são convertidas coercitivamente para strings, mesmo que declare(strict_types=1) seja usado
print 6 * 7; // 42
// Como print tem um valor de retorno, pode ser usado em expressões
// O código a seguir mostra "olá mundo"
if ( print "olá" ) {
echo " mundo";
}
// O código a seguir mostra "verdadeiro"
( 1 === 1 ) ? print 'verdadeiro' : print 'falso';
?>
Nota: Usando com parênteses
Envolver o argumento de
<?php
print "olá";
// mostra "olá"
print("hello");
// também mostra "olá", porque ("olá") é uma expressão válida
print(1 + 2) * 3;
// mostra "9"; os parênteses fazem com que 1+2 seja avaliado primeiro, e depois 3*3
// a declaração print enxerga toda a expressão como um único argumento
if ( print("olá") && false ) {
print " - dentro do if";
}
else {
print " - dentro do else";
}
// Mostra " - dentro do if"
// A expressão ("olá") && false é avaliada primeiro, produzindo resultado falso.
// Isto é convertido à força para a string vazia "" e mostrado.
// A declaração print á partir daí retorna 1, então o código dentro do bloco if é executado
?>Ao usar
<?php
if ( (print "olá") && false ) {
print " - dentro do if";
}
else {
print " - dentro do else";
}
// Mostra "olá - dentro do else"
// Diferentemente do exemplo anterior, a expressão (print "olá") é avaliada primeiro.
// Depois de mostrar "olá", print retorna 1.
// Já que 1 && false é falso, o código dentro do bloco else é executado.
print "olá " && print "mundo";
// Mostra "mundo1"; print "mundo" é avaliado primeiro,
// e depois a expressão "olá " && 1 é passada ao print da esquerda
(print "olá ") && (print "mundo");
// Mostra "olá mundo"; os parênteses forçam a avaliação das expressões print
// antes da operação &&
?>
Nota: Como esta é uma construção da linguagem e não uma função, ela não pode ser chamada usando funções variáveis ou argumentos nomeados.