• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

djthyrax

PHP4 (RIP) o grande Adeus aproxima-se

34 mensagens neste tópico

Este artigo serve de incentivo para quem se mostra relutante perante a migração entre a versão 4 para a versão 5 do PHP.

É que a equipa de desenvolvimento do PHP acaba de anunciar o fim do suporte ao PHP4, uma vez que o PHP5 já existe à 3 anos e o PHP6 vem a caminho, não existe razão para nos mantermos agarrados ao passado.

O fim do desenvolvimento para o PHP4 está marcado para 31-12-2007, no entanto, até dia 8 de Agosto de 2008 ainda poderão ser lançadas pontualmente alterações muito específicas.

O PHP.net e o PHP-PT aconselham a todos os que ainda não portaram as aplicações para PHP5 a aproveitar este último ano para o fazer. Poderão encontrar mais informações sobre como migrar uma aplicação de PHP4 para PHP5 em http://www.php.net/manual/en/migration5.php.

A citação diz tudo: Deixem de usar PHP4, foquem-se no PHP5. Têm aquela página no manual do PHP para vos ajudar e têm pessoas no fórum para vos tirar dúvidas. :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
PHP4 já acabou oficialmente, agora só security fixes.

Não!

O PHP4 não acabou. O desenvolvimento de features para o PHP4 acabou. Para além disso sendo Software Livre, ninguém pode decretar o seu fim. Qualquer pessoa pode continuar a desenvolver o PHP4 caso queira. Com Software Livre essas coisas não existem porque não se depende da vontade de ninguém em específico. Já com software proprietário a questão não é bem assim, o detentor dos direitos pode mesmo matar totalmente o software e até revogar as licenças já concedidas de forma a obrigar a usar-se outro produto/versão (em Portugal não pode por qualquer razão, mas penso que em alguns países isso é possível).

Ah e existem boas razões para se querer continuar a usar PHP4, como por exemplo ter uma aplicação cujo desenvolvimento está terminado e ainda não se ter obtido retorno do investimento no desenvolvimento da aplicação.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Semântica falco, no tópico só se falou na óptica de utilizador do interpretador, pelo que se pressupõe que se esteja a falar do desenvolvimento do mesmo. :P

Claro está, tens razão em tudo o que disseste. :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Neste caso a semântica dá-lhe um significado diferente do que tu disseste. Quem não estiver a par de como as coisas funcionam, pode não entender o que queres dizer.

Um programador deveria ter mais cuidado a utilizar a linguagem.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Bem... não estou a gostar muito do que estou a ver por aí. As maiores mudanças são remoções de coisas que podiam causar alguma confusão.

Não que isso seja particularmente mau (tambem não acho muito positivo), mas se é só para estas pequenas mudanças vai ser uma grande desilusão.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pouca coisa? Ora vejamos: temos melhor suporte a unicode, maior facilidade em manipular XML, suporte a SOAP (não me aquece nem arrefece). Removem o lixo tóxico que existia: magic_quotes, register_globals, safe_mode. Tiram coisas useless como as <%php %>. Tiram depracted stuff como o FreeType 1 & GD 1, algumas funções duplicadas. A remoção das ereg*() é que eu não percebo lá muito bem, talvez seja para evitar algo em duplicado, e optaram pelo melhor (preg*()).

E há mais que não estão aí referidas (mas num dos links: http://cvs.php.net/viewvc.cgi/php-src/NEWS?view=markup), tais como melhoramentos nos warnings, "tiraram" o dl(), etc.

Se vires bem, estão a limpar o código daquilo, criar uma boa codebase para depois poderem ter algo muito melhor.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
tirácio:

Se vires bem, estão a limpar o código daquilo, criar uma boa codebase para depois poderem ter algo muito melhor.

Mesmo que tirem 50% das funções bulit-in, ainda restam 2.849! Haja esperança!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mesmo que tirem 50% das funções bulit-in, ainda restam 2.849! Haja esperança!

Antes 3k funções do que 6k, sempre passamos a ter menos código :D
0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Só pelo unicode, a remoção das magic_quotes, register_globals, safe_mode e as tags <%php %>, já vale apena. Podiam era remover as tags <?php ?>, para deixar de haver misturas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

As <?php ?! Tiravam era as <?, que isso causa conflitos actualmente com o <?xml

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu sempre utilizei e ainda utilizo

<?php ?> 

porque sempre me disseram serem as tags mais compatíveis.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

As <?php ?! Tiravam era as <?, que isso causa conflitos actualmente com o <?xml

Por exemplo, tens um ficheiro .php assim

#O meu php
echo 'olá';

e o interpretador considera-se isto php e não texto.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso das tags é interpretado pelo servidor. O servidor não confunde... Por exemplo o mod_perl também usa isso e tendo trabalhado em projectos em que se usa mod_perl, nunca tive qualquer problema. Podem dar exemplos reais de problemas?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Podem dar exemplos reais de problemas?

Existem mas são poucos e no geral são pouco graves. Para alem disso, os críticos, regra geral, desconhecem-nos. Normalmente ficam-se por insignificâncias tipo nomenclatura de funções ou ausencia de detecção de determinados erros num compilador devido a não ser uma linguagem fortemente tipada, como se isso fosse um problema da linguagem.

Acho que o maior problema do PHP é mesmo permitir que miudos de 14 anos ponham o seu talento em prática de forma mais inteligente que engenheiros com 20 anos de experiência, deixando os últimos frustrados.

EDIT: triton, tirácio... porque é que 3000 funções na API principal é melhor do que 6000?

Esse argumento nem sequer diz respeito à linguagem em si, mas isso já é outra conversa.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

EDIT: triton, tirácio... porque é que 3000 funções na API principal é melhor do que 6000?

Esse argumento nem sequer diz respeito à linguagem em si, mas isso já é outra conversa.

As 3000 funções de diferença são pouco mais do que alias (do género, funcaoUm() exactamente igual à funcaoDois()) e funções duplicadas (fazem a mesma coisa, mas têm nomes que não têm qq relação entre si).

falco, já me aconteceu ter um ficheiro com isto:

<?xml version="1.0" encoding="UTF-8"?>
<html>
<head>
<title><?php echo $titulo; ?></title>
</head>
<body>
Ois.
</body>
</html>

E dar buraco por ler o <?xml como se fosse um <?php (graças ao short_tags).

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Acho que o maior problema do PHP é mesmo permitir que miudos de 14 anos ponham o seu talento em prática de forma mais inteligente que engenheiros com 20 anos de experiência, deixando os últimos frustrados.

Qual é o problema?

Eu sei o que sei de programação graças ao php, porque quando comecei ele dava-me o que eu queria, e de forma rápida, o que me fez gostar cada vez mais de programar, o que me levou aprender linguagens de mais baixo nível, se eu começa-se por C provavelmente tinha desisti-do.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso das tags é interpretado pelo servidor. O servidor não confunde... Por exemplo o mod_perl também usa isso e tendo trabalhado em projectos em que se usa mod_perl, nunca tive qualquer problema. Podem dar exemplos reais de problemas?

Não percebo poque é que o PHP não usa tags normais de XML "<php> code </php>".

porque é que 3000 funções na API principal é melhor do que 6000?

Esse argumento nem sequer diz respeito à linguagem em si, mas isso já é outra conversa.

Conflictos de nomes (talvez com os namespaces isso fique resolvido), bloat, duplicação de funções, bloat, numenclaturas inconsistentes (o Python também tem este problema), bloat... e talvez mais que não me lembro.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Por exemplo o mod_perl também usa isso e tendo trabalhado em projectos em que se usa mod_perl

O mod_perl usa isso onde? Tanto quanto sei, os sistemas de templating (Mason, TT, HTML::Template, etc) é que usam tags próprias. Se tiveres aí um link para a documentação do mod_perl onde explicite a utilização de tags, agradeço, sempre aprendo mais alguma coisa hoje.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tens toda a razão!

Fiz a confusão por causa da forma como se chama alguns handlers do Apache disponibilizados no mod_perl, em alguns sistemas de templating  (pode ser feito com tags).

O PHP não terá uma camada que faz a mesma funcionalidade que os sistemas de templating para o mod_perl?

Francamente não sei o suficiente sobre a arquitectura do PHP para saber se é assim, ou não. Alguém sabe?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
O PHP não terá uma camada que faz a mesma funcionalidade que os sistemas de templating para o mod_perl?

O PHP é essa camada: "PHP stands for PHP: Hypertext Preprocessor" e "PHP is an HTML-embedded scripting language."

Por outro lado, o mod_perl dá acesso à API do Apache, o que é muito mais saboroso que aquilo que o PHP oferece. A desvantagem, por isto, é que não é frequente encontrar mod_perl nos servidores partilhados.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
O PHP é essa camada

O PHP é mais que isso e internamente pode eventualmente funcionar de alguma forma diferente, por isso é que perguntei.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora