Php bir dosya dahil sorun ben veya dosyayı dahil olmadığını bir hata veriyor

5 Cevap class

Ile

include('basemodel.php');

Ben olsun

Ölümcül hata: C bulunamadı Sınıf 'Temel Model': on line 2 \ xampp \ htdocs \ allsides \ hesap \ model.php

Ileout

include('basemodel.php');

Ben olsun

Ölümcül hata: C sınıfı Temel Model Redeclare: \ xampp \ htdocs \ allsides \ diğerleri \ on line 2 basemodel.php

5 Cevap

, Hiç dahil veya gerektiren kullanmak asla asla. Include_onceyi veya require_oncenin kullanın. Bu kural için bir kaç küçük istisna vardır. Ama kod eklemek veya gerektiren, include_onceyi veya Require_once onu değiştirmek diyor şimdiye çoğunlukla.

(Şablon motorlar ve eval kod tuhaflıklar ve geçici çözümler içinde benzer kod bazen olmayan _once sürümleri gerekir. Ama bu ne yaptığını değil.)

Deneyin:

require_once ("basemodel.php");

===

Edit: bekle - Diğer hangi dosyaları dahil?

Benim için hata diyor tam olarak ne diyor!

Eğer C adlandırmak ne olur: \ xampp \ htdocs \ allsides \ diğerleri \ basemodel.php C: \ xampp \ htdocs \ allsides \ diğerleri \ (sınıf tanımı dahil) basemodel1.php

Eğer aynı classname iki dosya var gibi görünüyor.

Her nasılsa sınıf "Temel Model" iki beyanları var. Eğer dosyayı zaman bu yalnızca olur çünkü Ama, ben o spesifik bir dosya içine daha iyi bakmak öneririz.

Belki Temel Model dosyası tekrar Temel Model içeren bazı diğer dosyaları içerir? Ya da belki aslında dosyasında sınıf Temel Model iki kez bildirmek için çalışır?

NB: always include_onceyi () veya require_once () kullanmak yerine / gerektirecek dahil etmenizi tavsiye ederim!

APC (önbellekleme motor) bazen bana bunu yapar. Eğer kullanıyorsanız, opcode önbelleğini temizlemeyi deneyin:

apc_clear_cache("user"); // user cache
apc_clear_cache(); // system cache