Script çalışırken çıktı vermek

Bir PHP script’inin çıktısı script’in çalışması tamamlandıktan sonra gönderilir. Scrip çalışmaya devam ederken sayfada/ekranda bir çıktı gözükmez. Script’in oluşturduğu tüm çıktılar Output Buffer (ob) adı verilen tamponda tutulur. Programcı isterse bu tamponu ob_ fonksiyonlarıyla kontrol edebilir. Tampondaki içeriği istenildiği anda çıktı vermek için için ob_flush() komutu kullanılabilir. ob_flush cağrıldığında o ana kadar çıktı tamponuna biriktirilen tüm içerik tarayıcıya bir header yardımıyla gönderilir ve görüntülenmiş olur.

Çıktının zamanlamasını ayarlayarak göze hoş gözüken sayfa yüklemeleri elde edilebilir. Yine ob_flush ile uzun bir işlemi yerine getiren script’in, kullanıcıyı  o anda yağtığı iş hakkında bilgilendirmesi için faydalıdır. Gerektiğinde bu özellik kullanılırsa ziyaretçinin sayfa izleme kalitesi artacaktır.

Aşağıdaki kodda  ob_imlicit_flush komutunun kullanımına örnek yer alıyor. Bu komut çıktı tamponunu devre dışı bırakır ve echo gibi her çıktı komutunun ardından çıktının anında tarayıcıya gönderilmesini sağlar. Aşağıdaki kodun çalışan halini buraya tıklayarak izleyebilirsiniz.

Dikkat edilmesi gereken bir nokta, ob_flush komutundan hemen sonra flush() komutunun da kullanılması gerektiğidir.

Yazar: Özgür Koca

Yazar - Tankado.com

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.