PHP5: Boş değeri öntanımlı nesne oluşturma [kapalı]

4 Cevap php

Benim PHP kodunda bir hata alıyorum Strict Standards: Creating default object from empty value. Ben kullanıyorum kodu:

$u = new User();
$user->id = $obj['user_id'];

Hata Ben id özelliğini ayarlamak ikinci hattı üzerinde ortaya çıkıyor. Kullanıcı sınıfı id tanımlanan sihirli alıcılar ve ayarlayıcıları ile bir özel mülkiyet olarak belirledi.

Garip, aynı kodu başka bir yerde sıkı hatasız çalışır - bu yüzden benim ana soru hata anlamı tam olarak nedir? Umarım o zaman sorun koduyla ne olduğunu anlamak olabilir.

4 Cevap

Olmamalı

$u->id = $obj['user_id'];

Geçerli kod yeni bir nesne olarak stdclass $ kullanıcıyı yaratıyor.

Belki de amaçlanan

$u->id=$obj['user_id'];

$ User yok çünkü hatası alıyorum, ama bağlamdan onu bir nesne olmalıdır bilir.

$u = new User();
$u->id = $obj['user_id'];

...........................

Emin bu alakalı, ancak kodda ise $u adında bir değişken oluşturmak pasajı, ancak erişim $user ... eğer