Bugün bu hata da, bana oldu, ve ben (diğer olası nedenler arasında) bu olabilir neden haberdar oldu.
APC doğru sınıfları ad içeren bir tam adı, her sınıfı tanımlar. Ne yazık ki çeşitli isimler ile aynı sınıfa atıfta sonunda olabilir.
Örneğin:
Ben bir isim alanı içinde olmuştu sanki olmayan bir isim alanlı sınıf ithal, benim kodunda yanlış bir "kullanım" ifadesi vardı.
Sınıfı, "Sınıfım" ad oldu "\", onun doğru ve tam adı "\ Sınıfım" olduğunu anlamına söylüyorlar.
Bir noktada sınıfın vasıfsız adıyla "Sınıfım" ile sevk edildi ve özdevinimli var. Başka bir dosyada I (yanlış) bir kullanım açıklamada bir ad alanı öneki ile sınıf anılacaktır, "\ SomeNamespace \ Sınıfım kullanın;" söylüyorlar. Sonuç sınıfı (yine) benim küresel __ autoload () yöntemine iletilen oldu, ama farklı bir isimle. Bunu yapmak için kötü, autoload yöntem zaten sınıf bulmak için yeterince akıllı.
Anında, Apache Web Sunucusu error.log içine "... [APC-hata] sınıfı Redeclare" benim komut dosyası çalışmayı durdurdu ve oldu ki tüm APC yazı oldu. Benim sayfaları artık kullanılabilir.
Bu APC olursa olsun hata, ama sadece doğru davranış değildir.
(Benim komut ne olursa olsun çatışmanın çalıştırmak olacağını böylece) Benim durumumda geçici APC devre dışı bırakmak için yardımcı oldu ve geçti parametrelerin listesini üreten benim __ özdevinimli_yükle işlevi içine bir echo deyimi kanca. Yanlış adıyla yüklenen sınıfı çabucak gösterecek, ve ben o ve yeniden etkinleştirmek APC düzeltmek olabilir.
Bu kimse yardımcı olur umarım.