print

(PHP 4, PHP 5, PHP 7, PHP 8)

printBir dizge çıktılar

Açıklama

print(string$ifade): int

ifadeyi çıktılar.

print aslında bir işlev değildir (bir dil oluşumudur), dolayısıyla bağımsız değişkenini belirtirken yaylı ayraçları kullanmanız gerekmez.

echo'dan başlıca farklar, print'in tek bir bağımsız değişken kabul etmesi ve daima 1 döndürmesidir.

Bağımsız Değişkenler

ifade

Çıktılanacak ifade. Dizge olmayan değerler strict_types yönergesi etkin olsa bile dizgeye zorlanır.

Dönen Değerler

Daima 1 döner.

Hatalar/İstisnalar

PHP 8.0.0 ve sonrasında, bağımsız değişken sayısı sıfırsa ValueError oluşuyor. PHP 8.0.0 öncesinde bunun yerine bir E_WARNING uyarısı verilirdi.

PHP 8.0.0 ve sonrasında, [width] (genişlik) sıfırdan küçükse veya PHP_INT_MAX'tan büyükse bir ValueError oluşuyor. PHP 8.0.0 öncesinde, bir E_WARNING uyarısı verilirdi.

PHP 8.0.0 ve sonrasında, [precision] (hassasiyet) sıfırdan küçükse veya PHP_INT_MAX'tan büyükse bir ValueError oluşuyor. PHP 8.0.0 öncesinde, bir E_WARNING uyarısı verilirdi.

PHP 8.0.0 ve sonrasında, gereğinden daha az bağımsız değişken verildiğinde bir ArgumentCountError oluşuyor. PHP 8.0.0 öncesinde, bir E_WARNING uyarısı verilirdi.

Sürüm Bilgisi

Sürüm: Açıklama
8.0.0 Bu işlev başarısızlık durumunda artık false döndürmüyor.
8.0.0 Bağımsız değişken sayısı sıfırsa ValueError oluşuyor. Evvelce bunun yerine bir E_WARNING uyarısı verilirdi.
8.0.0[width] (genişlik) sıfırdan küçükse veya PHP_INT_MAX'tan büyükse bir ValueError oluşuyor; evvelce bir E_WARNING uyarısı verilirdi.
8.0.0[precision] (hassasiyet) sıfırdan küçükse veya PHP_INT_MAX'tan büyükse bir ValueError oluşuyor; evvelce bir E_WARNING uyarısı verilirdi.
8.0.0 Gereğinden daha az bağımsız değişken verildiğinde bir ArgumentCountError oluşuyor; evvelce bir E_WARNING uyarısı verilirdi.

Örnekler

Örnek 1 - print örnekleri

<?php
print "print yaylı ayraçlar olmadan da çalışır.";

// Satırsonu veya boşluk eklemek gerekmez;
// aşağıdaki tek satırda "helloworld" çıktılar.
+print "hello";
+print
"world";

print
"Bu çok satırlı bir
dizge olup satırsonu karakterleri
de çıktılanır."
;

print
"Bu çok satırlı bir\ndizge olup satırsonu karakterleri\nde çıktılanır.";

print
"Karakterlerin öncelenmesi böyle yapılır: \"Tıpkı böyle\".";

// Bağımsız değişken dizge üreten harhangi bir ifade olabilir
$bu = "Bu da";
print
"$bu Buda"; // Bu da Buda

// Ayrıca dizileri de kullanabilirsiniz
$bar = array("değer" => "Buda");

print
"Bu da {$bar['değer']} !"; // Bu da Buda !

// declare(strict_types=1) olsa bile dizge olmayan iadeler dizgeye zorlanır
print 6 * 7; // 42

// Tek tırnak içine alırsanız değişken basılır, değeri değil
print '$bu Buda'; // $bu Buda

// Başka karakter kullanmazsanız sadece değişkenin değeri basılır
print $bu; // Bu da

// print değer döndürdüğünden ifadelerde kullanılabilir
// Çıktısı: "hello world"
if ( print "hello" ) {
echo
" world";
}

// Çıktısı: "true"
( 1 === 1 ) ? print 'true' : print 'false';
?>

Notlar

Bilginize: Yaylı ayraçların kullanımı

print deyiminin bağımsız değişkenini yaylı ayraçlar arasına almak bir sözdizimi hatasına yol açmaz ve normal bir işlev çağrısı gibi görünen bir sözdizimi de üretmez. Ancak bu yanlış anlaşılabilir, çünkü yaylı ayraçlar aslında çıktılanacak ifadenin parçasıdır, print deyimim parçası değildir.

<?php
print "hello";
// "hello" basar

print("hello");
// bu da "hello" basar, çünkü ("hello") geçerli bir ifadedir

print(1 + 2) * 3;
// "9" basar; yaylı ayraçlar sayesinde 1+2 önce yorumlanır, sonra da 3*3
// print deyimi ifadenin tümünü tek bir bağımsız değişken olarak görür

if ( print("hello") && false ) {
print
" - inside if";
}
else {
print
" - inside else";
}
// " - inside if" basar
// ("hello") && false ifadesi önce yorumlanır ve false ile sonuçlanır
// bu boş dizgeye zorlanır "" ve çıktılanır
// print deyimi 1 döndürür, böylece if bloğundaki kod çalıştırılır
?>

print büyük bir ifade ile kullanılırken, anahtar sözcüğü ve bağımsız değişkenini yaylı ayraçlar arasına almak istenen sonucu üretmek için gerekli olabilir:

<?php
if ( (print "hello") && false ) {
print
" - inside if";
}
else {
print
" - inside else";
}
// "hello - inside else" basar
// önceki örneğin tersine (print "hello") ifadesi önce yorumlanır
// "hello" bastıktan sonra 1 döndürür
// 1 && false ifadesinin sonucu false olduğundan else bloğundaki kod çalıştırılır

print "hello " && print "world";
// "world1" basar; önce print "world" yorumanır,
// sonra soldaki print'e "hello " && 1 aktarılır

(print "hello ") && (print "world");
// "hello world" basar; ayraçlar print ifadelerinin
// &&'den önce yorumlanmasını sağlar
?>

Bilginize: Bu bir işlev değil, dil oluşumu olduğundan değişken işlevler veya isimli bağımsız değişkenler kullanılarak çağrılamaz.

Ayrıca Bakınız

To Top