PHP do Básico ao Avançado – Aula 1 – Conceitos e Preparação do Ambiente
Como não poderia deixar de ser, nesta primeira parte, vamos falar sobre a Linguagem, os padrões, tendências, como configurar o básico, as ferramentas que vamos usar, como será a abordagem do curso. PHP é uma linguagem de programação que surgiu em meados de 1995 e ainda hoje, é usado em cerca de 75% dos sites e uma das mais utilizadas em programação, no geral. A combinação de uso massivo, constantes melhorias, fácil curva de aprendizado e comunidade ativa, retroalimentou o combustível do PHP, o mantendo vivo por longos anos, o que pode ser considerado um feito em se tratando de aplicações específicas para a web, e justamente por este motivo foi a primeira escolha que tive para escrever um curso específico de uma linguagem.
PHP é uma linguagem de script de uso geral popular, especialmente adequada para desenvolvimento web, rápido, flexível e pragmático, que na data em que escrevo este artigo está na versão 7.4 com uma forte comunidade online em diversos idiomas, inclusive o português. Suporta as principais tecnologias de desenvolvimento, e desde a sua versão 5 vem ganhando recursos e velocidade, que tornam hoje uma das melhores opções para iniciar no desenvolvimento de sistemas web, contando com mais de uma centena de frameworks que dão suporte ou foram escritos utilizando a linguagem, além de centenas de milhares de módulos e códigos desenvolvidos para as mais diversas finalidades.
Desenvolvida originalmente com sintaxe que lembra a linguagem C, porém muito similar também ao Java e ao PERL é razoavelmente fácil de aprender, e que pode ser mesclada com o HTML, tem como objetivo escreverem páginas que serão geradas dinamicamente e rapidamente em diversos ambientes onde é suportada. A principal fonte de documentação e manuais, é o site da própria linguagem, que é extremamente simples e fácil de se localizar o conteúdo em diversos idiomas: https://www.php.net/ porém existe uma infinidade de outros sites especializados no suporte a comunidade de desenvolvedores e aprendizes.
Um pouco de história
Originalmente escrito em 1994, como um simples CGI para servir como um contador de visitas, em 1995 o autor Rasmus Lerdof liberou o código fonte e permitiu que desenvolvedores usassem da forma como desejassem. Isso permitiu usuários a fornecerem correções para bugs no código, e em geral, aperfeiçoá-lo. Em Setembro do mesmo ano, uma nova implementação incluiu algumas funcionalidades básicas do PHP como bem conhecemos hoje interpretação automática de variáveis de formulários, e sintaxe HTML embutida. Em outubro, uma versão reescrita deu ao PHP não só a conotação de um script, como foi o primeiro lançamento a vangloriar-se que era, na época, considerado um avançado script de interface.
A partir de 1996, esta segunda geração da implementação começou a realmente evoluir de um conjunto de ferramentas para sua própria linguagem de programação. Ele incluía suporte embutido aos banco de dados, cookies, funções de apoio definidas pelo usuário, e muito mais. Em 1997 e 1998, PHP teve o apoio de milhares de usuários ao redor do mundo.
PHP 3.0 foi a primeira versão que se assemelha com o PHP como existe hoje. Um dos maiores pontos fortes foi a extensibilidade e fornecer a usuários finais uma interface robusta para múltiplos banco de dados, protocolos, e APIs, além da facilidade de estender a própria linguagem o que atraiu dezenas de desenvolvedores que submeteram uma variedade de módulos um outro recurso chave foi introduzido, o suporte a programação orientada a objetos.
Em junho de 1998, o PHP3 foi anunciado e imediatamente instalado em cerca de 70000 domínios na época, e não mais limitado somente a sistemas no padrão POSIX, como também em Windows, chegando a 10% dos servidores presentes na internet terem suporte a linguagem. Neste momento, passou-se a reescrever o core para o PHP4 dando enfase na melhora da velocidade e a modularização da linguagem. O novo motor, chamado ‘Zend Engine’ ficou pronto em meados de 1999 e sendo lançado junto com o PHP4.
Lançado no início do ano 2000, o PHP4 além da altíssima melhoria da performance, incluiu outros recursos como suporte para a maioria dos servidores web, sessões HTTP, saídas de buffering, além de mais segurança para manipular dados de entrada de usuários e diversas novas construções de linguagem. Ficando em desenvolvimento até 2004.
O PHP 5 foi lançado em Julho de 2004 impulsionado pelo seu core o Zend Engine 2 e apoio a projetos como PEAR, PECL, documentação, infra-estrutura de rede subjacente sendo amplamente difundido a partir deste ponto e ganhando espaço, agora presente em mais de 60% dos servidores existentes ligados a internet.
Ah, em tempo, o ELEPHPANT que é o famoso Elefante que é usado como mascote da linguagem, foi criado por um membro da comunidade que associou o nome PHP’ com o formato do animal, e comparou a robustez do animal também com a da linguagem, e o fato de que em inglês, a palavra “ELEPHANT” tinha tudo a ver com a linguagem. O fato é que desde a primeira divulgação nosso amigo Elephpant passou a ilustrar dezenas de lugares e se relacionar cada vez mais com a linguagem propriamente dita.
O que é, e o que esperar do PHP
PHP é uma linguagem de script open source de uso geral, muito utilizada, e especialmente adequada para o desenvolvimento web e que pode ser embutida dentro do HTML como em:
<!DOCTYPE HTML> <html> <head> <title>Exemplo de PHP</title> </head> <body> <?php echo "Olá, Mundo! Eu sou um script PHP!"; ?> </body> </html>
Diferente de outras linguagens de SCRIPT como o PYTHON, ou o PERL, o PHP pode ser escrito dentro do HTML, tornando o entendimento do código por parte dos iniciantes muito mais fácil. Por outro lado usá-lo dessa forma, pode se tornar um pesadelo de manutenção e de design, e esses pequenos detalhes fazem muita diferença.
O que distingue o PHP do JavaScript é que o código é executado no servidor, gerando o HTML que é então enviado para o navegador. O navegador recebe os resultados da execução desse script, mas não sabe qual era o código fonte.
PHP pode ser extremamente simples para um iniciante, mas oferecer muitos recursos avançados para um programador profissional. Manipulando praticamente qualquer recurso no servidor, desde a manipulação de banco de dados, até manipulação de funções e execução de serviços no servidor.
Atualmente é suportado por praticamente todos os sistemas POSIX como o Linux, e também sistemas como o risc Os, windows, macOS e uma infinidade de outros. Suportando praticamente todos os servidores web httpd como Apache, IIS, nginx e muitos outros. Além de permitir a escolha do sistema operacional, e do servidor web, também da suporte a programação procedural e a orientação a objetos. Principalmente a versão 5 e 7 foram focadas no desenvolvimento do suporte as diretrizes mais novas da OOP e melhorias da velocidade de execução e recursos.
As habilidades do PHP incluem geração de imagens, arquivos PDF e até animações Flash (utilizando libswf e Ming) criados dinamicamente, on the fly. Você pode facilmente criar qualquer texto, como XHTML e outros arquivos XML. O PHP pode gerar esses arquivos e salvá-los no sistema de arquivos, em vez de mostrá-los em tela, formando um cache no lado do servidor para seu conteúdo dinâmico. Ou mesmo interagir com seu servidor de emails e ser usado para automatização.
Também tem suporte para comunicação com outros serviços utilizando protocolos como LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (no Windows) e incontáveis outros. Você também pode abrir sockets de rede e interagir diretamente usando qualquer outro protocolo. O PHP também suporta o intercâmbio de dados complexos WDDX, utilizado em virtualmente todas as linguagens de programação para web. Falando de comunicação, o PHP implementa a instancia de objetos Java e os utiliza de maneira transparente como objetos PHP.
Conclusão
Nesta primeira parte, tivemos uma visão sobre o poder e a simplicidade que é esperada na linguagem PHP e o que vamos ver nas demais aulas. Na próxima aula, vamos falar sobre a instalação e preparação do ambiente para desenvolvimento utilizando a linguagem, e as ferramentas que o desenvolvedor tem em mãos, como configurar o sistema de maneira a permitir os recursos de depuração, e as diferenças desse para o sistema de produção configurando os recursos e a forma como o sistema manipula os erros e as saídas.
Abordaremos também os diversos tipos de variáveis e constantes, além de apresentar como o sistema trata as diferentes formas de saída. Até a próxima.