Uma melhoria em relação à outra resposta Webtatic:
1 Usando o guia em http://www.webtatic.com/packages/php54/ :
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
2) Você precisa primeiro ver o que os pacotes instalados existentes precisam substituir, você pode fazer isso usando o yum shell para combinar a remoção do php-common e a instalação do php54w-common em uma transação (para que as dependências compartilhadas não sejam removidas)
yum shell
> remove php-common
> install php54w-common
> run
…
Is this ok [y/N]: n
Não diga "y" aos resultados, mas tome nota de todos os pacotes mencionados em "Removendo para Dependências", por exemplo
Removing for dependencies:
php
php-cli
php-pear
php-pecl-memcache
php-mysql
Se houver outros pacotes além do php * nesta lista, você não poderá alternar perfeitamente para o Webtatic PHP 5.4, mas terá que investigar alternativas. O Webtatic possui pacotes de substituição para todos os pacotes php base (consulte os pacotes listados na página vinculada ao 1. para confirmação); portanto, não deve haver problemas, a menos que você use outros repositórios de terceiros com pacotes instalados, dependendo da versão php específica instalado.
No restante da instalação (ainda no yum shell), você apenas remove esses pacotes e instala os correspondentes php54w- *:
> remove php-common php php-cli php-pear php-pecl-memcache php-mysql
> install php54w-common php54w php54w-cli php54w-pear php54w-pecl-memcache php54w-mysql
> run
…
Is this ok [y/N]: y
Você deve ver apenas os pacotes que você definiu para serem removidos e instalados na lista e pode confirmar a alternância da instalação. Quaisquer serviços atualmente em execução com o php carregado precisarão ser reiniciados, por exemplo, httpd ou php-fpm.
Como isso é "contínuo", qualquer alteração de software que ocorra enquanto os usuários podem acessar o site deve ter as consequências totalmente compreendidas. As bibliotecas compartilhadas que estão sendo removidas e adicionadas quando um processo ainda não foi carregado podem ser carregadas enquanto a biblioteca compartilhada não está lá. É melhor fazer atualizações de software como essa offline e, de preferência, testar em uma máquina que não seja de produção primeiro para verificar se o processo funciona conforme o esperado.
3) Para mudar para um hipotético pacote php54 base do CentOS (o CentOS 5 usou o prefixo php53), basta executar as etapas acima, substituindo a remoção php pela remoção php54w e a instalação php54w pela instalação php54, por exemplo
yum shell
> remove php54w-common
> install php54-common
> run
…
Is this ok [y/N]: n
…
> remove php54w-common php54w php54w-cli php54w-pear php54w-pecl-memcache php54w-mysql
> install php54-common php54 php54-cli php54-pear php54-pecl-memcache php54-mysql
> run
Is this ok [y/N]: y
Entretanto, quanto à mudança para a base hipotética php54, provavelmente não haverá alternativas para alguns pacotes (por exemplo, não havia extensão php53-pecl-memcache no CentOS 5) e o Webtatic possui pacotes que não estão disponíveis no CentOS base (por exemplo, php54w -pecl-zendopcache). Se eles estiverem ausentes, normalmente você não tem outra opção senão usar o pecl diretamente para instalá-los.
4) Qualquer atualização do PHP pode apresentar bugs, e os sites devem ser testados novamente. Isso não é específico para o Webtatic, mas a idéia geral de que novos recursos introduzem novos bugs.
Diferentemente do repositório Remi na resposta aceita, o repositório Webtatic EL6 nunca usa os mesmos nomes de pacotes que os repositórios base do CentOS, portanto, não substitui a instalação / atualização de pacotes para os quais você não pretende mudar e, como tal, é ativado por padrão.
Disclaimer: Eu sou o proprietário / mantenedor do Webtatic