PHP Dosya Çağırma Fonksiyonları – Sayfaya Dosya Dahil Etme

PHP Dosya Çağırma Fonksiyonları – Sayfaya Dosya Dahil Etme

PHP dosya çağırma işlemi ile proje geliştirirken bazı kod gruplarını amaçlarına göre ayrı gruplar halinde farklı dosyalara ayırıp, yeri geldiğinde gerekli PHP dosya ve dizin fonksiyonları kullanarak uygulama içerisine bu dosyaları dahil edip daha sistemli, sade ve düzgün yapıya sahip bir uygulama oluşturulması sağlanır.

Mesela veritabanı bağlantısı, proje içerisinde kullanılabilecek fonksiyonlar, bazı ayarlar ve tercihe göre oluşturulabilecek bazı sayfaların bulunduğu kodlamalar vb, bütün bu işlemlerin tek dosya içerisinde bulunması proje üzerinde bir karmaşaya neden olur. Bütün bu işlemleri gerçekleştiren kod gruplarını ayrı dosyalar içerisinde bulundurup yeri geldiğinde projeye dahil ederek projeyi sade, sistemli, hiyerarşik bir yapıya sahip ve daha kolay kontrol edilebilir bir uygulama haline getirmek amaçlanır.

PHP dosya dahil etme işlemi için yerine ve tercihe göre include, include_once, require ve require_once fonksiyonları kullanılabilir. Bu fonksiyonların her birisi php dosyalarını projeye dahil etme işlemini gerçekleştirebilirler. Çalışma prensiplerindeki bazı farklılıklardan dolayı bu fonksiyonların projede amaçlarına göre uygun yerlerde kullanılması projenin performansı ve işleyişi açısından tavsiye edilir. PHP dosya çağırma fonksiyonları konusunu aşağıdaki başlıklar altında ne işe yaradıklarını ve aralarındaki farkları inceleyelim.

include fonksiyonu

Include fonksiyonu PHP dosya çağırmak amacıyla kullanılan fonksiyonlardan birisi. Parametre olarak adreste bulunan dosyayı php sayfasına dahil eder.

Eğer dosyayı çağırma işlemi sırasında bir hata oluşur ise warning türünde uyarı mesajı döndürür ve proje kaldığı yerden çalışmaya devam eder. Verilecek hata mesajı örnek olarak şunun gibidir:

Warning: include(footer2.php): failed to open stream: No such file or directory in D:Programlarwamp64wwwindex.php on line 3

PHP include fonksiyonu kullanımı aşağıdaki gibidir.

include('footer.php');

include_once fonksiyonu

Include_once fonksiyonu da PHP dosya çağırma işlemini gerçekleştirir ve include fonksiyonunun kullanımı ile aynıdır. Include_once fonksiyonunun include fonksiyonundan farkı ise aynı dosyadan projeye birden fazla çağrılmasını engeller.

Dosya çağırma işlemi sırasında bir hata oluşursa warning türünde uyarı mesajı gösterilir. Uyarı mesajının gösterildiği satırdan itibaren projedeki kodlar çalışmaya devam eder. PHP include_once fonksiyonu kullanımı aşağıdaki gibidir.

include_once('ek_ayarlar.php');

Yukarıdaki fonksiyon ile sayfaya dosya dahil edildiyse ve projenin ilerleyen satırlarında aynı dosya tekrar dahil edilmek istenirse buna izin verilmez.

require fonksiyonu

Require fonksiyonu yukarıda anlatılan fonksiyonlar gibi PHP dosya dahil etme işlemini gerçekleştirir. Ancak include ve include_once fonksiyonlarında olduğu gibi warning türünde uyarı mesajı vermeye ek olarak ayrıca fatal error yani ölümcül hata mesajı verilir ve bu hatanın çıktığı satırdan itibaren proje çalışmayı durdurur. Verilecek fatal error hatası şunun gibi olacaktır:

Fatal error: require(): Failed opening required ‘veritabani_ayar2.php’ (include_path=’.;C:phppear’) in D:Programlarwamp64wwwindex.php on line 3

Veritabanı bağlantı ayarları gibi site için aşırı derece önemli kodların bulunduğu dosyalar için require fonksiyonu kullanılabilir. PHP require fonksiyonu kullanımı aşağıdaki gibidir.

require('veritabani_ayar.php');

require_once fonksiyonu

Require_once fonksiyonu da PHP dosya dahil etme işlemini yerine getirir. Require fonksiyonu ile aynıdır ancak projeye daha evvel aynı dosya dahil edildiyse tekrar dahil etme işlemine izin vermez, engellenir. PHP require_once fonksiyonu kullanımı aşağıdaki gibidir.

Require_once('fonksiyonlar.php');

Include, include_once, require, require_once Fonksiyonları Arasındaki Hız Farkı

Include ve require fonksiyonları bir dosyayı birden fazla kez çağırabiliyorken include_once ile require_once fonksiyonları bir dosyanın sadece 1 kere eklenmesini sağlar. İngilizce de “once” kelimesinin türkçe karşılığı “bir kere” olduğunu da düşünürsek buradan da aralarındaki farkı farkedebiliriz.

Include_once ile require_once fonksiyonları require ile include fonksiyonlarına kıyasla ek olarak dahil edilecek dosyanın projeye daha önce eklenip eklenmediğini de kontrol edeceklerdir. Bu ek kontrol işlemi include_once ile require_once fonksiyonlarının include ve require fonksiyonlarına göre daha yavaş çalışacağı anlamına gelecektir.

PHP’de include require arasındaki farklar genel itibarıyla böyle. Aşağıdaki listeden PHP dosya ve dizin fonksiyonları ile alakalı diğer yazılarıma ulaşabilirsiniz.

Yorum Yap
0 Yorum yapan