Nie bardzo rozumiem
php ma w większości kompatybilność wstecz
... są funkcje które są w nowych wersjach usuwane z PHP, zamieniane na inne lub dodawane nowe (jakieś niezmienne funkcje są ale jest też rotacja) - i duży skok był z 5.1 -> 5.2 -> 5.3 np.:
Wiekszość kodu napisanego dla wersji PHP 5.2 powinna działać z wersją PHP 5.3 (!UWAGA napisany dla 5.2 działa na 5.3 a nie odwrotnie - czyli nie jest kompatybilny wstecz! bo jak napiszesz soft wykorzystujący funkcje nowszego PHPa to na starszej wersji nie 'pójdzie'), poniżej znajdują się zmiany, które nie są wstecznie kompatybilne.
Funkcja clearstatcache() nie czyści domyślnie realpath cache
Funkcja realpath() jest w pełni niezależna od platformy. W konsekwencji powoduje to, że względne ścieżki w postaci __FILE__.''/../x” nie będą działać
Namespace – wprowadzenie tej funkcji umożliwiło tworzenie oddzielnych nazw dla poszczególnych klas, funkcji i stałych, co zwiększa przejrzystość pisanego kodu
Usunięcie trybu Safe Mode
Funkcje z rodziny call_user_func() propaguja wskaźnik $this, nawet w sytuacji gdy wywoływana jest klasa rodzica
Funckje tablicowe natsort(), natcasesort(), usort(), uasort(), uksort(), array_flip() i array_unique() nie akceptują obiektów przekazywanych jako argumenty. W celu zastosowania tych funkcji do obiektów należy umieścić te obiekty w tablicy.
itd
Jeśli soft wykorzystywał funkcję lub właściwość, która w nowszej wersji nie jest obsługiwana to wywali błąd.
Jeśli masz paczkę dla php 5.4 to możesz po jej zainstalowaniu na serwerze z niższym PHPem mieć problem (czyli wstecznej kompatybilności nie ma) bo:
Najważniejsze zmiany w tej wersji pod kątem wstecznej kompatybilności:
Usunięte trybu Safe Mode
short_open_tag domyślnie aktywny
Wprowadzenie Short Array Systax co umożliwia zapis tablic w formie [] zamiast array()
Usunięcie magic_quotes
Usunięcie register_globals i register_long_arrays z konfiguracji php.ini
Usunięcie mbstring.script_encoding – należy używać zend.script_encoding
call-time przekazywany przez referencje został usunięty
Z tego co przeczytałem w mailu z aktualizacją to dla serwerów z PHP 5.4 jest specjalna paczka ... rozumiem to tak, że jest to tylko dla serwerów z tą wersją (ale serce podpowiada mi, że producent softu nie zmienił tekstu maila i chodzi o 5.4 i każdą nowszą wersję PHPa na serwerze - nieco inaczej niż napisałeś).
Jeśli masz na serwerze wersję 5.3 a w sofcie będzie wykorzystana skrócona deklaracja tablic [] (dostępna od PHP 5.4 i nowszych) to ci zaczną się sypać błędy oraz ostrzeżenia (jeśli chcesz sobie podejrzeć błędy i ostrzeżenia PHPowe tu ustaw na serwerze w konfiguracji phpa error_reporting(E_ALL) - na wersji produkcyjnej - otwartej dla klientów koniecznie zmień na error_reporting(0) )