hosting / domain

bilgisayar dersleri

webdizayn

web tasarım

Harici Dosya (include)


PHP programlarımızda bilmemiz gereken ilk dosya işlemi, bir PHP programına, kendi dışındaki dosyayı, tabir yerinde ise, okutmak ve içindekileri aynen alıp, görüntülemesini sağlamaktır. Bunu include komutu ile yaparız. Bu komut, kendisine adı verilen düzyazı dosyasının içeriğini aynen bu komutun bulunduğu noktaya "yazar." Bu yolla bir PHP programına sık kullandığınız bir metni veya program parçasını dahil edebilirsiniz.

Bir güvenlik önlemi olarak bu tür dosyaların uzantılarını, sunucu ve Browser'ların tanıdğı MIME türlerine ait uzantılardan farklı yaparsanız, ziyaretçiler şans eseri de olsa bu dosyaları doğruca edinme imkanı bulamazlar. Bir örnek yapalım. Önce şu metni, harici_dosya01.x adıyla ve düzyazı biçiminde kaydedin (Windows ortamında Notepad'i kullanıyorsanız, dosya adı uzatması olarak .x harfinden sonra .txt harflerini eklediğine dikkat edin!):

"Ben harici bir dosyanın içindeki yazıyım.. Beni bir PHP programı alıp buraya getirdi! Kendisine teşekkür ederim"

Sonra, şu programı dosya_ekle01.php adıyla kaydedin, ve Browser'da açın:

<HTML>
<HEAD>
<TITLE>PHP'de Harici Dosya Ekleme</TITLE>
<meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-9\"><meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1254\">
</HEAD>
<?php
include ("harici_dosya01.x");
print ("\n<p> Ben zaten bu programının içinde olan bir yazıyım. Baştan beri burada olduğuma çok memnununum.. Harici dosyaya hoşgeldin diyorum!</p>");
?>
</BODY>
</BODY>
</HTML>

Buradaki include komutu biraz önce yazdığımız harici dosyayı alacak, içeriğini aynen kendi bulunduğu noktada, PHP'nin oluşturacağı HTML dosyasına katacaktır. Bu programı çalıştırdığınızda görüntü şöyle olacaktır:

Bu görüntüyü aldığınız sırada Browser'ınızda kaynağı görüntülerseniz, iki metnin adeta birleştirilmiş olduğunu göreceksiniz. Fakat dışardan PHP programına sadece düz metin eklemeyiz; program veya fonksiyon da ekleyebiliriz. Harici dosyada şu değişikliği yaparak, harici_dosya02.x adıyla kaydedin.

<?php print ("Ben de harici dosyayım.!<br>"); print ("Ama ben hesap da yaparım.. Örneğin iki iki daha ". (2 + 2). " eder!"); ?>

Haricî dosya okuyan programı da programı içinde, okunacak dosya adını düzelttikten sonra dosya_ekle02.php adıyla kaydedin; ve çalıştırın.
Haricî dosyamızda yer alan ...iki iki daha ". (2 + 2). " eder!"); şeklindeki ifadenin programa gelirken "..iki iki daha 4 eder!" şekline gelmesinin izahı, PHP'nin dışarıdan aldığı dosyanın içinde PHP programı olduğunu gördüğü anda, bu dosyanın içeriğini metin olarak değil, program olarak ele almasıdır. Bu yolla, PHP programlarımıza bir değerin dönmesini de sağlayabiliriz. Haricî dosyamızda şu değişikliği yapalım ve harici_dosya03.x adıyla kaydedelim:

<?php $sonuc = ( 2 + 2 ); return $sonuc; ?>

Bu satır bakalım programa dahil olacak mı? Sonra, program metninde şu değişlikliği yaparak, dosya_ekle03.php adıyla kaydedin ve çalıştırın:

<?php $donen_sonuc = include("harici_dosya03.x"); print ("\n<p> Harici dosyadan dönen sonuç: $donen_sonuc </p>"); ?>

Haricî dosyamızın içindeki program, return komutu ile sadece kendi içinde elde ettiği sonucu, onu çağıran programa verdi; ve bu sonucu alan programımız, sadece kendi içindeki bir değişkenin değerini Browser'a gönderdiği halde, bu değer haricî dosyadan alınmış oldu.

Haricî dosyaların include yoluyla PHP programlarımıza katılması, özellikle bir sitenin bir çok programında sık sık kullanılan metinlerin ve hesaplamaların bir kere yazılmasını ve tek satırla çağrılmasını sağladığı için kolaylık sağlar ve hata ihtimalini azaltır.