Programação Web avançada com PHP Construindo software com componentes
Flávio Lisboa
Conteúdo
Edição atualizada em 05/2025.
Você já teve uma boa introdução a PHP, mas gostaria de dar um próximo passo para passar do básico ao avançado: saber lidar com a complexa coordenação de várias responsabilidades em uma aplicação web real. Como controlar os componentes dos frameworks, trabalhar com microsserviços para avançar em complexidade e ser limpo e prático ao mesmo tempo?
Neste livro, Flávio Lisboa aborda tópicos avançados de programação PHP orientada a objetos para aplicações web. Após passar por uma revisão dos pontos mais importantes de PHP para você reforçar sua base da linguagem, o autor aprofunda em uma aplicação de exemplo, refatorando-a a cada capítulo conforme apresenta novos conceitos. Você verá como usar componentes específicos de software, passando pelos paradigmas de desenvolvimento orientado a componentes, a eventos, pela técnica de injeção de dependências, segurança, web services, até a manutenção da aplicação.
Sumário
- 1 Introdução
- 1.1 PHP e MySQL
- 1.2 Ambiente integrado de desenvolvimento
- 2 PHP para quem tem pressa
- 2.1 Um cadastro usando o sistema de arquivos
- 2.2 Um cadastro usando banco de dados relacional
- 2.3 Um cadastro com função definida pelo programador
- 2.4 Um cadastro com uma classe abstrata e duas classes concretas
- 2.5 Um cadastro com uma classe controladora de requisições
- 3 A aplicação de exemplo
- 3.1 Instalação da aplicação
- 3.2 De que se trata a aplicação
- 3.3 O que falta na aplicação
- 4 Desenvolvimento orientado a componentes
- 4.1 Usar é melhor que criar, mas nem sempre
- 4.2 Gerenciando componentes
- 5 Desenvolvimento orientado a eventos
- 6 Injeção de dependências
- 6.1 Injeção de dependência no controlador
- 6.2 Injeção de dependência no mapeador de tabelas
- 7 Segurança de aplicações web
- 7.1 Tratamento e neutralização de saída perigosa
- 7.2 Ataques XSS
- 7.3 Ataques de injeção de SQL
- 7.4 Ataques de simulação de requisição
- 7.5 Melhores práticas de segurança
- 8 Filtros e conversores de dados
- 8.1 Laminas\Filter
- 8.2 Filtros predefinidos
- 8.3 Cadeias de filtro
- 8.4 Criando filtros customizados
- 8.5 Laminas\InputFilter\InputFilter
- 9 Validadores de dados
- 9.1 Laminas\Validator
- 9.2 Customizando mensagens
- 9.3 Validadores predefinidos
- 9.4 Cadeias de validação
- 9.5 Criando validadores customizados
- 10 Autenticação
- 10.1 Laminas\Authentication\ AuthenticationService
- 10.2 Persistência de identidade
- 10.3 Resultados de autenticação
- 10.4 Retornos possíveis para uma tentativa de autenticação
- 10.5 Criação de adaptadores customizados de autenticação
- 10.6 Remoção da identidade armazenada
- 10.7 Implementando autenticação na aplicação
- 11 Controle de permissões
- 11.1 Laminas\Permissions\Acl
- 11.2 Laminas\Permissions\Rbac
- 12 Mapeamento objeto-relacional com Laminas\Db
- 12.1 Laminas\Db
- 12.2 Criando um projeto com o ORM do Zend/Db
- 12.3 Herdando uma classe mapeadora abstrata mais poderosa
- 12.4 Gerenciando relacionamentos na persistência de dados
- 13 Web services e APIs
- 13.1 XML-RPC
- 13.2 SOAP
- 13.3 JSON-RPC
- 14 Lendo e gravando dados de configuração
- 14.1 Laminas\Config
- 15 Internacionalização
- 15.1 Laminas\I18n
- 16 Referências
Autor

Flávio Lisboa
Flávio Gomes da Silva Lisboa (FGSL) é mestre e doutor em Tecnologia e Sociedade pela Universidade Tecnológica Federal do Paraná e bacharel em Ciência da Computação, com especialização em Tecnologia Java. Programador formado pelo Centro Estadual de Educação Tecnológica Paula Souza, já atuou em empresas privadas de TI e foi funcionário do Banco do Brasil, onde atuou como analista na diretoria internacional. É analista de desenvolvimento do Serviço Federal de Processamento de Dados (Serpro), no qual foi coordenador do Programa Serpro de Software Livre e gerente de equipe de desenvolvimento.
Tem mais de 10 anos de experiência em treinamento de desenvolvedores em programação orientada a objetos, padrões de projeto e uso de frameworks. Lecionou na pós-graduação da UNICID, em São Paulo, nas faculdades Sant'Anna, em Ponta Grossa, na UNICESUMAR, em Maringá, e na Faculdade Alfa de Umuarama. Lecionou no curso de sistemas de informação do Isulpar, em Paranaguá. Atualmente é professor de ensino médio e técnico da ETEC Bento Quirino, do Centro Estadual de Educação Tecnológica Paula Souza. É pioneiro na bibliografia em língua portuguesa sobre Zend Framework e Symfony. Por fim, ele é associado a ABRAPHP, Zend PHP Certified Engineer, Zend Framework Certified Engineer e Zend Framework 2 Certified Architect.
É autor do documentário em seis volumes 'Rom, Biografia não Autorizada', e dos livros de ficção 'O Um: a solidão e a harmonia' e 'Pandino, o Imperador, a vingança do Um', estes dois últimos reunidos no volume único 'Livres ou Iguais: a vingança de Atsu Col, o Um Que é Todos, contra Pandino, o Imperador'. Também é pesquisador, concentrando seus estudos no tema do software livre e aberto. Seus artigos podem ser encontrados na Biblioteca Digital da Sociedade Brasileira de Computação, a SBC-OpenLib (SOL).
Dados do produto
- Número de páginas:
- 204
- ISBN:
- 978-65-86110-25-8
- Data publicação:
- 07/2020. Atualizado em 05/2025.