Which-is-the-best-php-ide

Fatal error: Cannot redeclare function Hatası

Merhaba arkadaşlar,

Sıkıcı bir günün ardından PHP programlamaya yeni başlayanların hep başına gelen bir hatadan bahsediyorum.

Fatal error: Cannot redeclare function

Bu hata ile bende zamanında çok karşılaşıyordum. Düzensiz bir template sistemim olurdu. Template dosyamın içinde bir fonksiyon oluştururdum. Fakat aynı fonksiyonu asıl işlemlerimi yaptığım sayfada da tanımlıyordum. Bu şekilde iki farklı yerde aynı adla iki fonksiyon tanımlayınca PHP’nin kafası karışıyor ve hata veriyor. Şimdi örnek bir fonksiyon yazalım:

<?php
function foo($deger) {
 return $deger;
}
?>

Bildiğiniz gibi programcı insan biraz tembel ve üşengeçtir. Bu nedenle bu fonksiyon var mı yok mu diye kontrole etmek yerine basit bir fonksiyon ise tekrar yazar template dosyasında. İşte bu noktada basit bir kontrolle bu işlemi hata almadan atlatabiliriz:

<?php
if(!function_exists('foo')){
    function foo($deger) {
         return $deger;
    }
}
?> 

function_exists() fonksiyonu böyle bir fonksiyon var mı yok mu diye kontrol etmemizi sağlar. Eğer bu isimle bir fonksiyon tanımlı değilse yeni fonksiyonumuzu tanımlamamıza imkan verir.

Yeni yeni uğraşanlar için güzel bir makale oldu bence, kolay gelsin.

Post Author: Oral ÜNAL

Web geliştirmeyi başta meslek olarak hayal eden fakat daha sonra bir hobi haline getiren birisiyim işte.

Fatal error: Cannot redeclare function Hatası” için 3 yorum

  • Recep

    (23 Haziran 2013 - 04:20)

    Elinize sağlık çok işime yaradı ..

  • adana evden eve nakliyat

    (09 Temmuz 2013 - 09:52)

    hımm program yazmak gerçekten sorun o kadar kod aklında insan nasıl tutuyor? yada ek olarak kodları bir yere yazıp oradan COPY-PASTE mi yapıyor?

  • Ertuğrul

    (11 Temmuz 2016 - 01:04)

    Varya sen adamın dibisin :D

Yorum yazma sırası sizde!