Search code examples
phpzend-frameworkzend-db

Moving from Zend Framework 1.5 to 1.11


I have my application that was programmed about 3 years ago using Zend Framework 1.5 running on PHP 5.3 [Earlier version? 5.3 introduced goto as a keyword].

I had to move my application to a new web host that is running on a newer version of PHP that has the goto keyword. I now get errors with a goto() function implemented in ZF 1.5. So I decided to move my application on ZF 1.11 hoping that the latest version would get me off such errors. However, by doing so, I have only run into major errors in my application's Zend way of communicating with my database. And another few errors such as

Call to a member function setMessage() on a non-object

on a line that has

$form->caller_id->getValidator('Zend_Validate_NotEmpty')->setMessage('Please select your name from the caller list!', 'isEmpty');

I am not well familiar with Zend. I have worked with CakePHP and understand the MVC architecture.

Can someone suggest how I should approach this problem? I feel kind of lost!


Solution

  • You just need to change the string name of the validator (I tried this on my own form and the short name 'NotEmpty' returns the object and 'Zend_Validate_NotEmpty' returns false):

    current:

    $form->caller_id->getValidator('Zend_Validate_NotEmpty')->setMessage('Please select your name from the caller list!', 'isEmpty');
    

    new:

    $form->caller_id->getValidator('NotEmpty')->setMessage('Please select your name from the caller list!', 'isEmpty');