Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Singleton sorunu

Slm arkadaşlar

  public static $_instance;
  public static function getInstance()
  {
    if (self::$_instance == NULL)
        self::$_instance = new self();
        
    return self::$_instance;
  }

yöntemini eminim hepiniz biliyorsunuzdur.
bu yazmış olduğum bağlantı classını localhostta sorunsuz bir şekilde çalıştırabilirken.

$db = Connect::getInstance();


ile çalışıyor fakat sunucuya attıgım zaman

$db = new Connect();


demem gerekiyor bu da yaptıgım Singleton tekniğini yok saymam anlamına geliyor. Bu sorun neden olabilir ve nasıl bir çözüm üretebilirim iyi çalışmalar
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Cevaplar

  • Qwerty adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    5 cevap - 2 soru
    şu şekilde de deneyebilirsin

     
    public static function getInstance()
    {
             return new Connect();
    }
    • curlyhair adlı üyenin fotoğrafı curlyhair
      bu şekilde denersek sonuç olarak birşeyi kontrol etmemiş oluyoruz.
      10 yıl önce yazılmış
    • Qwerty adlı üyenin fotoğrafı Qwerty
      Kodların doğru, çalışıyor. Bir problem yok. phpinfo atarak sunucunun php versionuna bakabilirsin... Sonuçta çalışmaması için bir neden yok..

      Belki local'in php5 sunucun php4 destekliyordur.. vs. gibi şeyleri kontrol ettiniz mi ?

      diyeceğim o ki, bu kodun çalışmaması için bi neden yok -ki localinizde çalışıyor- hatayı sunucuda arayın veya hosting firmanıza konuyu iletin.
      10 yıl önce yazılmış
    • curlyhair adlı üyenin fotoğrafı curlyhair
      tşk ederim arkadaşlar arıştırıyorum konuyla ilgili bişreyler bulursam burda sizlerle paylaşacam ayrıca konu ile ilgili araştırma yaparken

      http://ysfkc.com/php/signleton-desing-pattern-oop-yazilim-deseni.html 

      adresini okudum çoğu arkadaşa yardımcı olabilir Singleton mantıgı nedir ?
      10 yıl önce yazılmış
  • madpoet adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    83 cevap - 0 soru
    new self();
    


    kısmına kızıyor olabilir, zira sadece sunucuda çalışmıyorsa ilk aklıma gelen versiyondan kaynaklanan bişeyler. Ben singleton'ı şu şekilde kullanıyorum bunu dene istersen bi de:
    (Not: php.net'ten alınmıştır)

        // The singleton method
        public static function singleton() 
        {
            if (!isset(self::$instance)) {
                $c = __CLASS__;
                self::$instance = new $c;
            }
    
            return self::$instance;
        }