PHP.nl

print

print

Output a string

int **print** string $expression

Outputs . expression

is not a function but a language construct.

Its argument is the expression following the keyword, and is not delimited by parentheses. print``print

The major differences to are that only accepts a single argument and always returns . echo``print``1

expression The expression to be output. Non-string values will be coerced to strings, even when is enabled. the strict_types directive

Returns , always. 1

Voorbeeld: examples

<?php
print "print does not require parentheses.";
print PHP_EOL;

// No newline or space is added; the below outputs "helloworld" all on one line
print "hello";
print "world";
print PHP_EOL;

print "This string spans
multiple lines. The newlines will be
output as well";
print PHP_EOL;

print "This string spans\nmultiple lines. The newlines will be\noutput as well.";
print PHP_EOL;

// The argument can be any expression which produces a string
$foo = "example";
print "foo is $foo"; // foo is example
print PHP_EOL;

$fruits = ["lemon", "orange", "banana"];
print implode(" and ", $fruits); // lemon and orange and banana
print PHP_EOL;

// Non-string expressions are coerced to string, even if declare(strict_types=1) is used
print 6 * 7; // 42
print PHP_EOL;

// Because print has a return value, it can be used in expressions
// The following outputs "hello world"
if ( print "hello" ) {
    echo " world";
}
print PHP_EOL;

// The following outputs "true"
( 1 === 1 ) ? print 'true' : print 'false';
print PHP_EOL;
?>

Opmerking: > ### Using with parentheses

Surrounding the argument to  with parentheses will not
raise a syntax error, and produces syntax which looks like a normal
function call. However, this can be misleading, because the parentheses are actually
part of the expression being output, not part of the 
syntax itself.

`print``print````php





    When using  in a larger expression, placing both the
    keyword and its argument in parentheses may be necessary to give the intended
    result:

    
   `print````php
<?php
if ( (print "hello") && false ) {
    print " - inside if";
}
else {
    print " - inside else";
}
// outputs "hello - inside else"
// unlike the previous example, the expression (print "hello") is evaluated first
// after outputting "hello", print returns 1
// since 1 && false is false, code in the else block is run

print "hello " && print "world";
// outputs "world1"; print "world" is evaluated first,
// then the expression "hello " && 1 is passed to the left-hand print

(print "hello ") && (print "world");
// outputs "hello world"; the parentheses force the print expressions
// to be evaluated before the &&
?>

echo``printf``flushWays to specify literal strings