2016-07-28 28 views
5

PHP 7.0.4 kullanıyordum ve her şey sorunsuz çalışıyordu ve PHP 7.0.8'e yükseltildim ve bu gibi hatalar almaya başladım." yer."Önemli hata: Sınıf bildirilemiyor", PHP 7.0.8'e yükselttikten sonra "

Fatal error: Cannot declare class Plugins\Users\Plugin because the name is already in use in /var/www/html/plugins/Users/Plugin.php on line 8

herkes ne oluyor, ben değişiklik günlüklerini okuyordum ama bu bir yama o şey kırmak olmamalıdır güncellemek oluyor bir fikri var mı? Ayrıca, bu soruna herhangi bir çözüm bulunmazsa, 7.0.4 sürümüne nasıl geri indirilebilirim? Üste | Ben opcache devre dışı denedim

  • bu kullanıyorum sorunu
  • çözmedi: Şimdiye kadar bir yorum Özetle

    (ben ubuntu 16.04 kullanıyorum ve ben sadece noktası sürüme yükseltilebilir ediyorum) besteci otomatik yükleyici - Ben require veya include kullanmıyorum

  • Bu hata, bir ton sınıf için oluyor, bu yüzden açıkça bir kod sorunu (benim bölümümde) değil, kod 7.0.8'e yükseltmeden önce çalışıyordu
+1

Rahatsız edici kodu paylaşmaya özen gösterilsin mi? – Machavity

+0

@Machavity Tek bir sınıf değil, eğer bu sınıfı koddan kaldırırsam başka bir sınıf bu hatayı atar, PHP'de bir şeydir çünkü dediğim gibi, 30 dakika öncesine kadar gayet iyi çalışıyordu. –

+0

hata mesajı açık görünüyor –

cevap

1

Görünüşe göre, hatadan sonra hata oluşmaya başlamıştı, gözlerimin önünde olsa bile onu görmezden geldim. Size şöyle

<?php 

namespace Plugins\Users; 

use FW\Utility\Models\Plugins\Plugin; 

class Plugin extends Plugin { 

ve son olarak ben, açıkça görebilirsiniz, sınıf adı Plugin belirsiz:

Bunlar ilk birkaç söz konusu sınıfın hatları (ve görünüşe göre diğer sınıfların bir demet) vardır ama, ha garip ve muhtemelen Machavity didnlediğiniz bishop 'ın answer

Guess açıklanan bug neden olduğu, 7.0.4 değildi.

+0

Sevindim, düzeltildi;) – Machavity

4

Kesin olarak söylemek için yeterli veri yok, ancak opcache'den şüpheleniyorum. Bu hata, aslında, originates in opcache bu yüzden bu noktaya kadar hata, muhtemelen #66773, çeşitli opcode hatalarından biri tarafından gizlenmişti.

Yasal olarak, düzeltilmesi gereken bir otomatik yükleme sorun yaşıyorsunuz. Sınıfı yeniden adlandırın, ad alanlarınızı kontrol edin ve tüm zorlu gereksinimleri kaldırın.

Sen devre dışı/yeniden etkinleştirme opcache veya 7.0.4 geri dönerek eski hatalı bir davranış geri mümkün olabilir, ama gerçekten hata sadece autoloading ve opcache belirli bir kombinasyonu ile maskelenmiş. Gerçekten de, sadece şu ana kadar meselenin fark edilmeden önce tesadüfen gerçekleşti ve sadece tekrar maskelenebilme şansı olacak.

En iyi yol, sorunu düzeltmektir.

İlgili konular