De momento posso dizer que estou 'preso' a 2 contas diferentes de alojamento precisamente por causa desta situação.
Por um lado aprecio imenso a hostingbug (
http://hostingbug.net) onde tenho alguns dos meus sites alojados, por outro lado estou a depender de outro alojamento porque fiz alguns trabalhos que, esses sim, só funcionam com PHP 5 e aí tenho php 4 e 5. E certamente perguntarão, porque é que não utilizo só o que tem as duas versões? A resposta é simples, este ultimo é lento e alem disso estou confiante que mais tarde ou mais cedo, espero que mais cedo, a hostingbug disponibilize tambem o PHP 5.
E depois não é só a questão do PHP, é também a questão da versão MySQL, que geralmente é utilizada uma versão também mais recente que aumenta em muito as potencialidades.
Há muito tempo que quem programa já devia ter acordado, por isso é que alguns dizem que este ou aquele script não funciona em PHP 5. É tão óbvio, as globais há muito que se sabe como fazer, $HTTP_SERVER_VARS já pertence ao século passado por exemplo. Depois register_globals vem off por defeito no PHP 5 (felizmente para o bem de muitos), e isso é um dos principais motivos de as coisas não funcionarem como esperado. São pequenos pormenores, a maioria fáceis de resolver.
Oscommerce está morto e enterrado, porque é que continuam a apostar nessa loja é que eu ainda não consegui entender.... e sim, se algo não funciona em PHP 4 e foi programado à menos de 8 anos então foi mal programado, não tenho receio nenhum em dize-lo.
Agora compreendo que para as pessoas 'vulgares' isso nem sequer importe, logo voces, que vendem tem de salvaguardar o vosso lado tambem, mas por outro estão a privar outos clientes de progredirem em termos de novas potencialidades.
Não pensem em mudar como um acto de dificil decisão, simplesmente pensem que tem de mudar. Se tem receio de queixas dos clientes depois de mudarem, então não há duvida, optem por utilizar PHP 4 e PHP 5, mas por favor, não esquecam de actualizar a versão MySQL tambem!
E para concluir:
1) um trabalho relativamente recente, e estou a falar de 5 ou 3 anos tem de funcionar em PHP 5 tão bem como funciona em PHP 4, se não funcionar é porque quem o fez não sabe programar devidamente.
2) um trabalho recente pode não funcionar em PHP 4, o que quer dizer que foi feito recorrendo às potencialidades que o PHP 5 nos veio trazer.