[MASOCH-L] funçao php53 ereg x preg_match

Douglas Fischer fischerdouglas at gmail.com
Thu Sep 15 12:23:09 BRT 2016


​Mantar contar o número de ocorrências da string ​ereg pode ajudar a
reduzir o tamanho do susto.

DEVs de uma empresa que atendo estava fazendo um AUÊ sobre isso...
Achei um cabra mais teimoso que eu que me ajudou a estimar quantidade de
alterações que precisariam ser feitas para migrar de PHP.

Deu MUITO menos do que imaginávamos! Em um dia e meio tava tudo rodando
liso...
Depois levou quase uma semana achando coisinhas menores.




Em 15 de setembro de 2016 12:14, Danton Nunes <danton.nunes at inexo.com.br>
escreveu:

> On Thu, 15 Sep 2016, Rejaine Monteiro wrote:
>
> ola pessoal,
>>
>> por acaso alguém aí que programa em php  e tem algum script ou algum
>> "comandinho mágico" para alterar automaticamente as funções ereg eregi e
>> ereg_replace que foram substituidas no php53 para preg_match e preg_replace?
>>
>
> esse pessoal que mantém o php faz cada besteira que dá dó. não entendo por
> que diabos removeram as funções com experssões regulares POSIX.
>
> não adiante só trocar ereg por preg, pois a sintaxe e semântica das
> respectivas exrpessões regulares são diferentes.
>
> Sei que fazer diretamente no código é até simples de fazer, mas a questão
>> é que tenho uma aplicação bem antiga aqui (a qual não temos mais suporte,
>> pois já foi até descontinuada) com centenas de linhas e vários arquivos
>> para alterar...
>>
>
> se fosse só trocar 'e' por 'p', o sed poderia ser usado para fazer a troca
> no atacado, mas o problema são as próprias expressões regulares, POSIX nas
> funções antigas e Perl nas novas.
>
> o problema não é só teu. veja: http://stackoverflow.com/quest
> ions/6270004/how-can-i-convert-ereg-expressions-to-preg-in-php
>
> tentei vários comandos com sed q encontrei na net mas nada parece ter
>> funcionado. se não conseguir alterar automaticamente, creio q o trabalho de
>> alterar manualmente pode não compensar e vou acabar partindo para um
>> downgrade.
>>
>
> eu partiria para o downgrade. e colocaria de castigo qualquer um que
> viesse com a ideia de fazer qualquer coisa em php daqui para a frente.
>
> uma alternativa que me ocorreu é escrever uma extensão de retro-
> compatibilidade que reimplemente as funções removidas estupidamente pelos
> mantenedores da linguagem. O caminho das pedras começa por aqui:
> http://php.net/manual/en/internals2.structure.php
>
>
> __
> masoch-l list
> https://eng.registro.br/mailman/listinfo/masoch-l
>



-- 
Douglas Fernando Fischer
Engº de Controle e Automação


More information about the masoch-l mailing list