Merhabalar boş boş dururken bu iki fonksiyon arasındaki farka değinmek istedim. Daha önceki yazımda explode() ve strip() fonksiyonlarına değinmiştik ve aralarındaki çok ufak farkı anlatmıştım. Bu yazımda da yine benzer gibi görünen ama aslında bir birinden çok açık bi şekilde ayırt edilen file_get_contents() ve readfile() fonksiyonlarına değineceğim.

Öncelikli fonksiyonumuz olan file_get_contents() ele alalım. Bu fonksiyon ile bir dosya yada uzaktaki veriyi okumak için kullanırız. Bu sayede bir dosyadaki veya uzaktaki bilgileri tek seferde bir değişkene aktarabiliriz.

Aynı zaman da bu fonksiyonun readfile() fonksiyonundan farkı ise okuduğu veriyi sonradan çıktı alınması için depolar nasıl mı ? aşağıdaki örneğimize bakalım.

Örneğimiz de bir sitenin index dosyasını okuyacağız.

<?php
$site = file_get_contents("http://www.ysfkc.com/index.php");
echo "Site okundu<br>";
echo $site;
?>

bu betik çalıştırıldığında ekranda “Site okundu bilgisini” girip bir satır boşluk verdikten sonra $site adlı değişkeni ekrana yazacaktır.

Peki readfile() ile arasındaki fark nedir ? readfile() fonksiyonu ise kendisine verilen dosyayı bu local veya uzaktaki bir dosyayı okuduğu gibi ekrana basmasıdır. Yani okunan değeri sonradan kullanmak için bir değişken de tutmuyor anında ekrana yazdırıyor. Şimdi readfile() fonksiyonumuzla ilgili bir örnek yapalım.

<?php
$site = readfile('http://www.ysfkc.com/index.php');
?>

Bu betik çalıştırıldığında siz de göreceksiniz ki echo ile $site değişkenini yazdırmadığımız halde ekrana çıktı verdiğini.

Umarım bu küçük ayrıntı işinizi kolaylaştırır.