Prof: Alisson de Oliveira Programação Web PHP _____________________________________________________________ PHP PHP (um acrónimo recursivo para "PHP: Hypertext Preprocessor") é uma linguagem de programação de computadores interpretada, livre e muito utilizada para gerar conteúdo dinâmico na World Wide Web, como por exemplo a Wikipédia. Histórico A linguagem surgiu por volta de 1994, como um pacote de programas CGI criados por Rasmus Lerdof, com o nome Personal Home Page Tools, para substituir um conjunto de scripts Perl que ele usava no desenvolvimento de sua página pessoal. Em 1997 foi lançado o novo pacote da linguagem com o nome de PHP/FI, trazendo a ferramenta Forms Interpreter, um interpretador de comandos SQL. Mais tarde, Zeev Suraski desenvolveu o analisador do PHP 3 que contava com o primeiro recurso de orientação a objetos, que dava poder de alcançar alguns pacotes, tinha herança e dava aos desenvolvedores somente a possibilidade de implementar propriedades e métodos. Pouco depois, Zeev e Andi Gutmans, escreveram o PHP 4, abandonando por completo o PHP 3, dando mais poder à máquina da linguagem e maior número de recursos de orientação a objetos. O problema sério que apresentou o PHP 4 foi a criação de cópias de objetos, pois a linguagem ainda não trabalhava com apontadores ou handlers, como é a linguagem Java. O problema fora resolvido na versão atual do PHP, a versão 5, que já trabalha com handlers. Caso se copie um objeto, na verdade copiaremos um apontador, pois, caso haja alguma mudança na versão original do objeto, todas as outras também sofrem a alteração, o que não acontecia na PHP 4. Trata-se de uma linguagem extremamente modularizada, o que a torna ideal para instalação e uso em servidores web. Diversos módulos são criados no repositório de extensões PECL (PHP Extension Community Library) e alguns destes módulos são introduzidos como padrão em novas versões da linguagem. É muito parecida, em tipos de dados, sintaxe e mesmo funções, com a linguagem C e com a C++. Pode ser, dependendo da configuração do servidor, embarcada no código HTML. Existem versões do PHP disponíveis para os seguintes sistemas operacionais: Windows, Linux, FreeBSD, Mac OS, OS/2, AS/400, Novell Netware, RISC OS, IRIX e Solaris. A Wikipédia funciona sobre um software inteiramente escrito em PHP, usando bases de dados MySQL: o MediaWiki. Construir uma página dinâmica baseada em bases de dados é simples com PHP, (em parte, vale lembrar), este provê suporte a um grande número de bases de dados: Oracle, Sybase, PostgreSQL, InterBase, MySQL, SQLite, MSSQL, Firebird, etc., podendo abstrair o banco com a biblioteca ADOdb, entre outras. PHP tem suporte aos protocolos: IMAP, SNMP, NNTP, POP3, HTTP, LDAP, XML-RPC, SOAP. É possível abrir sockets e interagir com outros protocolos. E as bibliotecas de terceiros expandem ainda mais estas funcionalidades. Existem iniciativas para utilizar o PHP como linguagem de programação de sistemas fixos. A mais notável é a PHP-GTK. Trata-se de um conjunto do PHP com a biblioteca GTK, portada do C++, fazendo assim softwares inter-operacionais entre Windows e Linux. Na prática, essa extensão tem sido muito pouco utilizada para projetos reais. Principais características A linguagem PHP é uma linguagem de programação de domínio específico, ou seja, seu escopo se estende a um campo de atuação que é o desenvolvimento web, embora tenha variantes como o PHP-GTK. Seu propósito principal é de implementar soluções web velozes, simples e eficientes. Características: Velocidade e robustez Estruturado e orientação a objeto Portabilidade - independência de plataforma - escreva uma vez, rode em qualquer lugar; Tipagem fraca Sintaxe similar a Linguagem C/C++ e o PERL _____________________________________________________________ http://www.alisson.info [email protected] Prof: Alisson de Oliveira Programação Web PHP _____________________________________________________________ Extensões Extensões do PHP: Funções de compressão de bzip2 Funções de conversão de Calendar Funções de ClibPDF Funções de crack Família de funções ctype Biblioteca de rotinas de cliente URL - CURL Funções de pagamento Cybercash Funções DBM Camada de funções de abstração de banco de dados DBA Funções de dBase Funções dbx Funções DOM XML Funções .NET Funções EXIF Funções FrontBase Funções de formato de dados de formulários (Forms Data Format) FDF. Funções de filePro Funções de FTP Funções da biblioteca de imagens GD Funções de Gettext Funções de HyperWave Conversão de tabela de caracteres ICONV Funções de Informix Funções de manuseio de IIS Funções de IMAP POP3 e NNTP Funções de Ingres II Funções de InterBase Funções de Java Funções de LDAP Funções de Multi-Byte String Funções de Mcrypt Encryption Funções de Mhash Funções de Mimetype Funções de Ming para Flash Funções de mSQL Funções de MSSQL Funções de MySQL Funções de MySQLi Funções de Oracle 8 Funções de OpenSSL Funções de Oracle Funções de sobrecarga de objectos Funções de PDF Funções de PostgreSQL Funções de impressora Funções de memória Compartilhada Funções de get and walk de SNMP Funções de SOAP Funções de socket Funções de Sybase Funções de Tidy _____________________________________________________________ http://www.alisson.info [email protected] Prof: Alisson de Oliveira Programação Web PHP _____________________________________________________________ Funções Funções Funções Funções Funções Funções Funções de Tokenizer de W32api de XML-RPC de XSLT do YAZ para Arquivos Zip de compressão de ZLib Grandes mantenedores PHP já há algum tempo tem chamado atenção de gigantes da Tecnologia por sua robustez e facilidades. Segue alguns: Oracle Yahoo! Wikipedia IBM Eclipse (IDE) Netbeans (IDE) O que é preciso para programar em PHP PHP é uma linguagem voltada para internet, portanto, será necessário possuir um servidor com os módulos de PHP instalados. Por PHP ser uma linguagem livre, podemos fazer o download gratuitamente do site php.net e instalá-lo em nosso servidor que pode ser tanto o IIS do Windows como o Apache do Linux. Se você não possuir nenhum dos dois e não sabe como configurar um servidor, aconselhamos fazer o download do EasyPHP. Esse programa já vem com o servidor Apache, os módulos de PHP, o banco de dados MySql e o PHPMyAdmin e após instalá-lo, basta iniciar o servidor e pronto, já está tudo configurado. (Podemos acessar a pasta padrão digitando o endereço localhost em qualquer browser). Veja o tópico de nosso fórum "Como configurar o Apache, PHP e MySql usando o EasyPHP". Agora, quanto a programação de fato, podemos utilizar desde um simples editor de texto como um grande programa pago, isso irá depender de como queremos programar. Se preferir, veja a lista de editores de PHP. Primeiro Script em PHP <HTML> <HEAD> <TITLE>Primeiro código</TITLE> </HEAD> <BODY> <?php // Este é o nosso primeiro script em PHP echo ("Olá, Mundo!"); ?> </BODY> </HTML> Tags PHP é uma linguagem desenvolvida para a internet, portanto, está intimamente fusionado nas tags HTML. Qualquer script PHP que formos executar deverá vir dentro da tag <?php ... ?>. Mas, como a linguagem PHP é configurável, muitas vezes podemos usar as short tags (apenas <? ... ?>) ou até mesmo ASP tags (<% ... %>), isso dependerá de como está definido no arquivo de configuração PHP.ini. _____________________________________________________________ http://www.alisson.info [email protected] Prof: Alisson de Oliveira Programação Web PHP _____________________________________________________________ Comentários Comentários servem apenas para documentar o código, ou seja, para inserir dicas ou anotações que não são trechos de código a serem executados. PHP utiliza duas formas de comentário: o comentário de linha única e o comentário de várias linhas. O comentário de linha única começa a partir de barras duplas (//) ou tralha (#) e termina na primeira quebra de linha. Tudo que estiver após as barras será ignorado. O comentário de várias linhas começa a partir da barra e asterísco (/*) e devemos terminá-la com asterísco barra (*/). Tudo que estiver dentro de /* e */ será ignorado. echo echo() é uma função. Podemos pensar em funções como sendo ações pré-determinadas da linguagem. No caso de echo, ele irá criar uma saída para o html, ou seja, ela irá escrever seus argumentos no código HTML que irá para o usuário. ("Olá, Mundo!") ("Olá, Mundo!") é o argumento da função echo. Muitas funções exigem argumentos, ou seja, dados que serão processados pela função. No caso de echo, há uma string (cadeia de caracteres) que será passada ao código HTML. PHP tem muitas características herdadas da linguagem C e C++, a mais marcante é o fato de que toda linha de código deve terminar com um ponto-e-vírgula (;). PHP nos possibilita a integração multiplataforma por que todo o código gerado em PHP chega ao usuário apenas como HTML puro, ou seja, o usuário não irá ver nenhuma linha de código em PHP, mas, todo o HTML gerado como resultado do processamento do HTML. Então, o código acima irá chegar ao usuário apenas como: <HTML> <HEAD> <TITLE>Primeiro código</TITLE> </HEAD> <BODY> Olá, Mundo! </BODY> </HTML> _____________________________________________________________ http://www.alisson.info [email protected]