Ölümcül hata: tanımlanmamış yöntemi Çağrı stdClass

5 Cevap php

Ben diyor bir hata alıyorum

Ölümcül hata: tanımsız yöntemi stdClass Çağrı :: .......... / .. in mysql_con () / includes / hat 68 üzerinde script / import.php..

Hat 68 karşılık gelir:

if(!$ip2c->mysql_con())

Benim komut dosyası başında bir require_once() deyimi var

Burada sorun olabilir?

Teşekkürler

5 Cevap

Dusoft says anlamına gelebilir:

  • $ip2c nesne yok,

    Eğer farklı bir hata olacaktı çünkü not Hangisi doğru "Fatal error: Call to a member function mysql_con() on a non-object"

O da anlamına gelebilir diyor ki:

Ayrıca bu serileştirme ile yapmak olabilir quote:

  • Bir sınıf örneği diske tefrika edildiğinde PHP bir "stdClass" olarak oluşturur böylece Bu hata normalde, daha sonra başka bir istek re-read/deserialised ancak sınıf tanımı henüz yüklü değil, atılır (standart sınıfı.)

Ya da büyük olasılıkla, sanırım:

  • $ip2c değişken bir nesne değildi ve daha sonra sessizce yere yukarıdaki kodu stdClass haline döküm php.

    Eğer doğrudan bir özellik atarsanız bu olabilirdi.

Gibi:

 $ip2c = null;

 //php casts $ip2c to 'stdClass'
 $ip2c->foo = bah;

 //Fatal error: Call to undefined method stdClass::mysql_con() in...
 $ip2c->mysql_con();

Bir bakın better example here.

bu ya $ ip2c nesne yok veya mysql_con işlevi çağırmak için çalışıyoruz sınıfının parçası olmadığı anlamına gelir.

I think this happen because "extension=php_mysql.dll" extension isn't loaded in php.ini. Take a look with

phpinfo ();

Bu yanlış bir kod olabilir. Ben bu kod satırı varken ben bir kez o hatayı başardı:

if ($myObj->property_exists('min')){
    // do something
}

Bu gibi hata çizgi sonuçlandı Hangi:

PHP Ölümcül hata: satır # # # üzerinde myFile.php tanımsız yöntemin stdClass :: property_exists () Çağrı

Daha sonra için sabit hat:

if (property_exists($myObj, 'min')) {
    // do something
}

Bu yüzden de bu olasılığı kontrol edin.

Büyük olasılıkla nesne yok. Bize bunu nasıl yarattığını kodunu göstermek lütfen. Eğer başka bir sınıf içinde bunu kullanıyorsanız kullanılarak, (belki örneğin __ construct fonksiyon oluştururken):

$ip2c = new Class;

Kesmeyecek. Bunun yerine yapın:

$this->ip2c = new Class;

ve daha sonra

$this->ip2c->mysql_con();