Ben 1,7-1,8 benim şimdiki projeyi güncellemeye çalışıyorum. Bunun sonu yok ki ne ben değiştirmek zorunda mı?
Çoğu özellikleri hala eski kodu ile çalışır. size test ortamında denemek ve ZF değişiklik günlüğünü okuyun. önemli bir şey yükleyici şimdi farklı çalışır. Eğer autoload kullanıyorsanız özellikle.
1.7 kadar
require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();
1.8 'den beri
require_once 'Zend/Loader/Autoloader.php';
$loader = Zend_Loader_Autoloader::getInstance();
$loader->registerNamespace('Namespace_');
Short answer:
Run your test suite and check the results ;)
Long answer:
I remember two points where backward compatibility was broken:
Lütfen önyükleme doğru Zend_Locale ayarlanmış değilse, ZF> = 1.7.2 Eğer console yoluyla komut dosyası çalıştırırsanız tarayıcılar Locale tespit edemediklerini bir istisna atar.
Zend Framework 1.8 Zend_Controller_Action yapıcı modifiye edildi.
(Benim özel Controller_Action sınıfta yapıcı artık Zend_Controller_Action aynı olmadığını bana gösterdi nedense xDebug ne de PHP kendisi için) hata ayıklama saat sonra bu hatayı öğrendim kadar benim uygulama kırdı, çünkü bu söz var.
Yani sizin kurucusunu değiştirmek zorunda
public function __construct(Zend_Controller_Request_Abstract $request, Zend_Controller_Response_Abstract $response, $invokeArgs = array())
karşı
public function __construct(Zend_Controller_Request_Abstract $request, Zend_Controller_Response_Abstract $response, array $invokeArgs = array())