PHP include(), require() ve require_once()
Bu makalede sizlere PHP de include(), require() ve require_once() ile dışarıdan dosya çağırma fonksiyonlarını ve bunlar arasında farkları anlatacağım. İlk olarak bu fonksiyonları nerelerde ne için kullanırız ona bir bakalım.
Örneğin bir web sitesi yapıyorsunuz. Footer alanları tüm sayfalarda aynı. Bu durumda her sayfaya Footer kodlarını kopyalamak yerine Footer için bir adet yeni sayfa oluşturup, tüm sayfalarda ilgili yere bu Footer sayfasını include etmemiz yeterli olacaktır.
Örnek ;
Footer.php
<h2> Burası Footer Alanı < /h2>
Daha sonra index.php sayfamızda ilgili yere gelip Footer.php sayfasını include edelim.
<div> Burası index sayfasının Header alanı < /div>
<div> Burası index sayfasının İçerik Alanı < /div>
<div> < ?PHP include('Footer.php') ?> < /div>
Bir de hakkımızda sayfamız olsun.
hakkimizda.php
<div> Burası Hakkımızda sayfasının Header alanı < /div>
<div> Burası Hakkımızda sayfasının İçerik Alanı < /div>
<div> < ?PHP include('Footer.php') ?> < /div>
Yukarıda ki örnekte şunu yapmış olduk; Bir tane master Footer.php sayfası oluşturduk. Daha sonra bu Footer.php sayfasını index.php ve hakkimizda.php sayfalarında ilgili yerlere include ettik. Yani her sayfaya gidip Footer alanı için kodları tekrar yazmak zorunda kalmadan hazırladığımız Footer.php template’ini çağırdık.
Diğer bir kullanım alanıda php de yazdığımız fonksiyonlarla ilgili.
Her sayfada ortak olarak kullanacağımız fonksiyonlarımız olduğunu varsayıyorum. Her sayfanın en başına gidip PHP etiketleri arasına bütün fonksiyonları yazmak yerine, bir tane fonksiyon dosyası oluşturup onu da istediğimiz sayfalara include edebiliriz (Çağırabiliriz).
PHP include(), require() ve require_once() Arasında Farklar
include()
include(), belirttiğimiz dosyayı sadece içeriye yükler. Yani çağırdığımız dosyanın çalışıp çalışmaması veya dosyanın var olup olmamasıyla ilgilenmez. İçeriği hatalı bile olsa ondan sonra gelen kod blogunu bozmadan sayfayı çalıştırmaya devam eder. “PHP Warning!” uyarısı verir ancak bu uyarıyı da gizlemek için “error_reporting(0)” yazmak yeterli olacaktır.
require()
require(), belirttiğimiz dosyayı istediğimiz sayfaya yükler ancak çağırdığımız sayfanın kontrolünü de yapar. Yani require() ile çağırdığımız dosya yok ise (dosya yolunu veya adını yanlış yazmış olabilirsiniz) bütün kod blokları da çalışmayacaktır. PHP “fatal error” verecektir. Kısaca özetlemek gerekirse, require() ile çağırdığınız dosya yoksa veya içeriği hatalıysa sayfa çalışmayacaktır.
require_once()
Öncelikle require() için yazdıklarımın hepsi require_once() içinde geçerli. require()’dan farkı, require_once() ile çağırdığımız dosya yoksa veya içeriği hatalıysa require_once()’ ye kadar olan kısım çalışır, require_once()’den sonrası çalışmaz.
Bir Yorum Yazın