PHP'de:
require
yerine include
kullanmalıyım?require_once
ile include_once
kullanmalıyım?Ayrıca require
ve include_once
de vardır.
Yani sorunuz şu olmalı.
require
yerine include
kullanmalıyım?require_once
ile require
kullanmalıyım?1'in cevabı [burada] açıklanmıştır (http://www.w3schools.com/php/php_includes.asp).
require() fonksiyonu, hataları farklı şekilde ele alması dışında include() ile aynıdır. Bir hata oluşursa, include() işlevi bir uyarı oluşturur, ancak kod yürütülmeye devam eder. require() işlevi ölümcül bir hata oluşturur ve kod durur.
2'nin cevabı [burada] bulunabilir (http://php.net/manual/en/function.require-once.php).
require_once() deyimi require() deyimi ile aynıdır, ancak PHP dosyanın daha önce dahil edilip edilmediğini kontrol eder ve eğer edilmişse tekrar dahil etmez (require).
_once fonksiyonları ile _once olmayan fonksiyonlar arasındaki fark: once olmadan kod tekrar dahil edilirken, _once işlevleri ile PHP dahil edilen dosyaları takip eder ve yalnızca bir kez dahil eder.
require ve include arasındaki fark: Gerekli bir dosya bulunamazsa PHP ölümcül bir hata verirken include için sadece bir uyarı verilir.
Aradaki fark, komutların oluşturduğu hatadır. Requireile, kullanmak istediğiniz dosya gerçekten gereklidir ve bu nedenle bulunamazsa bir
E_ERROR` üretir.
require()
,include()
ile aynıdır, ancak başarısız olduğunda ölümcül birE_ERROR
seviyesinde hata üretir.
include
yalnızca başarısız olursa bir E_WARNING
hatası üretir, bu da aşağı yukarı sessizdir.
Bu nedenle, kalan kodun çalışması için dosya gerekliyse ve dosyanın mevcut olmaması durumunda komut dosyasının başarısız olmasını istiyorsanız bunu kullanın.
*_once()` için:
include_once()
, bir kodun belirli bir çalıştırılması sırasında aynı dosyanın birden fazla kez dahil edilip değerlendirilebileceği durumlarda kullanılabilir, bu durumda işlev yeniden tanımlamaları, değişken değeri yeniden atamaları vb. gibi sorunların önlenmesine yardımcı olabilir.
Aynı şey require_once()
için de geçerlidir.
Referans: require()
, include_once()