• Şuradasınız
  • Anasayfa
  • PHP
  • PHP : Include ve Require ile Dışarıdan Dosya Dahil Etme

PHP : Include ve Require ile Dışarıdan Dosya Dahil Etme

Geliştirilen bir projede, projenin geliştirilebilirliği ve okunabilirliği çok önemlidir. Doğal olarak yazılan kodun sade, düzgün ve anlaşılır bir şekilde yazılması gerekir.

Kodu parçalara ayırmak da anlaşılabilirliği artıran etkenlerden birisidir. Bu yazıda bir örnek üzerinden gidip include ve require ile kodu parçalara ayırmayı not edeceğim.

WordPress gibi hazır bir içerik yönetim sistemini ele alalım. WordPress kullanan bir sistemin ana sayfası genellikle şu kısımlardan olmaktadır;

  • Üst menü
  • Yan menü
  • İçerik alanı
  • Alt menü

Yukarıdaki bölümler index.php dosyasında bulunacaktır. Hepsinin kodu index.php dosyasında bulunacağı için o dosya iyice büyüyecek, şişecek ve okunabilirliği azalacaktır.

Fakat index.php dosyasını şu şekilde parçalara ayırabiliriz;

  • ust.php (header)
  • yan.php (sidebar)
  • icerik.php (content)
  • alt.php (footer)

Bu parçaları da inde.php dosyasına dahil edebiliriz. Tam bu noktada php nin bize sunmuş olduğu dışarıdan dosya dahil etme fonksiyonları devreye girer.

include fonksiyonu

include fonksiyonu belirtilen dosyayı programa ekler. Eğer dosyayı bulamazsa ekrana bir uyarı mesajı yazar.

include "ust.php";
include "yan.php";
include "icerik.php";
include "alt.php";

include_once fonksiyonu

include_once fonksiyonu ise aynı isimli dosyadan 2 kere dahil etmeyi önler. Aşğıdaki kod ust.php dosyasını index.php dosyasına sadece 1 kere yükleyecektir.

include_once "ust.php";
include_once "ust.php";

require fonksiyonu

require fonksiyonu belirtilen dosyayı programa ekler. Eğer dosyayı bulamazsa ölümcül hata verir ve programı durdurur. Kullanırken dikkat ediniz.

require "ust.php";
require "yan.php";
require "icerik.php";
require "alt.php";

require_once fonksiyonu

require_once fonksiyonu ise yine include_once fonksiyonu gibi aynı isimli dosyadan 2 kere dahil etmeyi önler.

require_once "ust.php";
require_once "ust.php";

Bu fonksiyonlarla ilgili eksiklerim, bilmediklerim illa ki olmuşur. Düzeltmeler için yorum bölümünü kullanabilirsiniz.

Benzer Yazılar

Yorumlar

  • kerem bekman , 23 Nisan 2011 - 21:03:02

    Include ve require arasında ciddi fark vardır.. Eğer büyük bir framework geliştiriyorsanız, tutarlılık önemlidir. Bunu korumak için yapacağınız frameworkun önce include ve require haritaları çıkartılır..

    Örneğin wordpress framework unun include ve require haritası.. http://phpimpact.files.wordpress.com/2008/08/word

    CodeIgniter kullananlar için include ve require haritası.. Zamanında çok aramıştım :)
    http://phpimpact.files.wordpress.com/2008/08/code

    Cevapla
  • borantula , 29 Haziran 2011 - 07:57:40

    Merhabalar

    require ile include arasında bildiğim kadarıyla fark require fonksiyonunun çekilen dosyanın olmaması halinde hata vermesi ve scripti durdurması, include fonksiyonunun ise eğer dosya yoksa bu duruma aldırmadan yoluna devam etmesidir.

    Örnek olarak wordpress'de functions.php içerisine başka bir fonksiyon dosyası yerleştirirken require('myfunctions.php) demek gerekir ancak diyelim ki bir yere bir header footer falan koyacağız, bu aşamada include() kullanmak daha doğrudur.

    Kerem'in gönderdiği haritalardan da bakarak güzel örnekler görebilirsiniz bu konuda(haritalar için teşekkürler, kullandığım iki temel sisteme dair bu görseller hoşuma gitti)

    Cevapla

Yorum Yazın

Su elementleri kullanabilirsiniz : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Arama
RSS
Beni yukari isinla