Blog

Php Dosya Ekleme (include ve require) Fonksiyonları

Bir php sayfasına bir başka betik ya da herhangi bir dosya dahil etmek için kullanılan fonksiyonlar vardır. Bu fonksiyonlar yardımı ile bir php sayfasına başka bir php sayfası dahil edilebilir ve dahil edilen php sayfasındaki değişken ve fonksiyonlar kullanılabilir.

include ve require komutlarının görevi, bu komutların çalıştırıldığı yerde, istenilen dosya o bölgede varmış gibi görüntülenir. Fakat bu komutlarla sayfaya her dosya(pdf, doc) yüklenmez. .php, .html ve .txt dosyalar eklenir.

Şimdi bu fonksiyonları inceleyelim.

İnclude() kullanımı

Bir PHP dosyası içine başka bir PHP dosyası çağırmak istiyorsak bunun için include kullanılır.

Dahil edilecek dosyalar, dosya yolu gösteren dizin tanımlanmış ise dosya yoluna göre, tanımlanmamış ise include_path değeri içinde tanınlanmış yollara göre aktif dosyaya dahil edilir. Eğer dosya include_path içinde tanımlanan yollarda bulunamazsa, include() aktif PHP dosyasının yer aldığı dizini kontrol eder. Dosya burada da bulunamazsa, include() deyimi bir hata verir.

Eğer bir yol tanımlaması yapılmışsa, include_path değeri dikkate alınmaz.

Bir dosya bir betiğe dahil edildiğinde, bu dosyanın içerdiği kod, dosyanın dahil edildiği satır itibariyle ana betikte geçerli olan değişken uzayını miras alır. Yani, dosyanın dahil edildiği satıra kadar mevcut değişkenlerin hepsi dahil edilen dosyanın içinde kullanılabilir olacaktır. Bunun yanında, dahil edilen dosyada tanımlanmış fonksiyonların ve sınıfların tamamı ana betiğin genelinde tanımlanmış sayılır.

İki kullanım şekli vardır.

<?php

include "dosya.php";

?>
<?php
 
include ("dosya.php");
 
?>

require() kullanımı

require() deyimi ile include() deyimi ile aynı işlemi gerçekleştirir.

Bu iki komut arasındaki temel fark include kullanarak bir hata ile karşılaştığımızda uyarı verir buna karşın script oluşturulmaya devam eder, ancak require kullanıldıysa hata verir ve kodun çalışmasını sonlandırılır.

require fonksiyonunun da kullanımı include fonksiyonu ile aynıdır.

<?php

require "dosya.php";

?>
<?php

require ("dosya.php");

?>

include_once kullanımı

include_once deyimi belirtilen dosyayı betiğin çalışması esnasında okur ve çalıştırır. Bu deyimin çalışma biçimi include deyimi ile benzerdir, tek farkı kendisiyle dahil edilmiş bir dosya, betiğin başka bir yerinde tekrar dahil edilmek istenirse buna izin vermemesidir. include_once TRUE döndürür.

include_once deyimi, bir betiğin çalışması esnasında aynı dosyanın bir kereden fazla dahil edilme ihtimaline karşı, bu dosyanın yalnızca bir kere dahil edileceğinden emin olunmak istenirse kullanılmalıdır. Bu sayede işlev bildirimlerinin yinelenmesi, değişkenlere tekrar değer atanması gibi sorunlar ortaya çıkmaz.

include_once "a.php";

require_once kullanımı

require_once deyimi, dosyayı evvelce dahil edilmişse tekrar dahil etmemesi dışında require deyimiyle aynıdır. Böylelikle, bir dosyanın iki kez dahil edilmesi önlenmiş olur.

require_once(__DIR__.'/config.php');

 

Yorum yaz