Referans olarak yeni dönüş değeri önerilmemektedir Atama

6 Cevap php

Ben sadece bir hata var.

Böyle bir nesne atamak çalıştığınızda:

$obj_md = new MDB2();

Ben olsun hata "referans olarak yeni dönüş değeri önerilmemektedir Atama" dir. Aslında ben bir çözüm arıyordum ettik ama gördüğüm tek sadece php.ini (error_reporting) ait politicy kısın edilir. Ben de denedim, ama işe yaramadı.

Ben bana yardımcı olabilir umuyoruz .. bu kadar kafa karıştırıcı. Şimdiden teşekkürler.

6 Cevap

PHP5'ta bu deyim önerilmiyor

$obj_md =& new MDB2();

Emin size örnek kodu bir işareti cevapsız değil mi? Yani devlet uyarıyı oluşturmak istiyorsunuz, ancak bu gerekli değildir ve kaldırılabilir.

Bu deyim PHP4 kullanılmıştır neden görmek görmek için this manual page.

Geçenlerde PHP 5.3.2 kullanıyor birine PHP 5.2.17 kullanılarak bir sunucudan SimplePie (http://simplepie.org/) kullanarak bir site taşındı. Ben bu gibi hata mesajlarının bir listesini almaya başladı bu hamleden sonra oldu:

Deprecated: Assigning the return value of new by reference is deprecated in .../php/simplepie.inc on line 738

Bu konuda çeşitli tartışmalar inceledikten sonra, ben simplepie.inc dosyasında = new ile =& new tüm örneklerini değiştirerek şeyler netleşmiştir.

Ben bu bu hata mesajları aldı ancak bu özel durumda çalıştı ve denemeye değer olabilir tüm durumlarda çalışacak olmadığını bilecek kadar deneyimli değilim.

& referans bir değişkene yeni bir nesne atamak / bir yönteme bir nesne geçmek için PHP kullanılır. PHP 5 varsayılan referans olarak tüm değişkenleri geçer çünkü PHP 5 depricated edilir.

Belki mdb2 yapıcı bir $ değişken kullanan bazı kod var = & Yeni ClassName ();

Nitin doğru - konu MDB2 kod aslında.

Göre Replacement for PEAR: MDB2 on PHP 5.3 Eğer PHP5.3 uyumlu bir sürümü için mdb2 SVN sürümüne güncelleme yapabilirsiniz.

Bu cevap Mart 2010 verilmiş, ve http://pear.php.net/package/MDB2/ Birkaç ay sonra serbest gösterir gibi, ben mdb2 güncel versiyonu da sorunu çözecektir bekliyoruz.

Çünkü WAMP 2.0i paketi değil, Joomla geliyor PHP 5.3 arasında oldu.

Bunu düzeltmek için iki seçeneğiniz var,

WAMP 2h (önceki sürüm) veya WAMP sitesinden download PHP 5.2.9-2 addon kullanmak ya.