SlideShare uma empresa Scribd logo
1 de 57
E-commerce com Zend Framework 2
Nome Marcel Bezerra
Dezembro/2015
2
Conhecendo o palestrante
 Formado em Baicharel em Análise de Sistemas
e Tecnologia da Informação na FATEC
Carapicuiba;
 5 anos de experiência com Programação PHP;
 Analista de Sistemas e Instrutor: 4Linux;
 ZF2 CERTIFIED ARCHITECT;
Marcel Bezerra da Silva
3
Conhecendo a 4Linux
 Metodologia IT Experience - Cenários reais
 Cursos práticos, rápidos e baratos de
autores feras: www.4shot.com.br
 Projetos complexos de missão crítica,
com infra e desenvolvimento PHP
4
Alguns dos nossos clientes
A 4Linux suporta o ecossistema de software livre da
Caixa. Um dos maiores cases do mundo.
Clientes que confiam na qualidade dos serviços da 4Linux.
5
4Linux também é PHP
6
Cursos práticos, rápidos e baratos de
autores “feras”
www.4shot.com.br
7
8
E-commerce com Zend Framework 2
E-commerce
Tags: segurança, internacionalização, layout, desempenho, CRUD.
9
E-commerce com Zend Framework 2
Consumidores, produtos, carrinho de compras, pagamento
10
E-commerce com Zend Framework 2
Prototipação
11
E-commerce com Zend Framework 2
Componentes
12
Agenda – E-commerce com Zend Framework 2
Apresentação
Autenticação
Gerenciamento de produtos
Carrinho de compras
Integração com provedores de pagamento
Conclusão
Perguntas
13
E-commerce com Zend Framework 2
Autenticação
14
E-commerce com Zend Framework 2
Autenticação
15
E-commerce com Zend Framework 2
– bind()
- setData()
- isValid()
- getData()
- setHydrator(ZendHydratorHydratorInterface)
- setInputFilter(ZendInputFilterInputFilterInterface)
ZendZendForm
16
E-commerce com Zend Framework 2
- setData()
- isValid()
- getValues()
- add(ZendInputFilterInputInterface)
ZendInputFilterInputFilter
17
E-commerce com Zend Framework 2
- setFilterChain(ZendFilterFilterChain)
- setValidatorChain(ZendValidatorValidatorChain)
ZendInputFilterInputInterface
18
E-commerce com Zend Framework 2
- getFilters()
- attach(ZendFilterFilterInterface)
ZendFilterFilterChain
19
E-commerce com Zend Framework 2
- filter($value)
ZendFilterFilterInterface
20
E-commerce com Zend Framework 2
- getValidators()
- attach(ZendValidatorValidatorInterface)
ZendValidatorValidatorChain
21
E-commerce com Zend Framework 2
- isValid($value)
- getMessages()
ZendValidatorValidatorInterface
22
E-commerce com Zend Framework 2
Autenticação
23
E-commerce com Zend Framework 2
- setIdentify()
- setCredential()
- authenticate()
ZendAuthenticationAdapterDbTable
24
E-commerce com Zend Framework 2
Autenticação
25
E-commerce com Zend Framework 2
- getStorage()
- hasIdentity()
- getIdentity()
ZendAuthenticationAuthenticationService
26
E-commerce com Zend Framework 2
- isEmpty()
- read()
- write()
- clear()
ZendAuthenticationStorageStorageInterface
27
E-commerce com Zend Framework 2
Autenticação
Http User Agent:
1use ZendSessionValidatorHttpUserAgent;
2use ZendSessionSessionManager;
3$manager = new SessionManager();
4$manager­>getValidatorChain()­>attach(
5 'session.validate',
6 array(new HttpUserAgent(), 'isValid'));
28
E-commerce com Zend Framework 2
Autenticação
Remote Addr:
1use ZendSessionValidatorRemoteAddr;
2use ZendSessionSessionManager;
3$manager = new SessionManager();
4$manager­>getValidatorChain()­>attach(
5 'session.validate',
6 array(new RemoteAddr(), 'isValid'));
29
E-commerce com Zend Framework 2
Autenticação
Link: https://github.com/mabez/bird-skeleton/
30
E-commerce com Zend Framework 2
Gerenciamento de produtos
31
E-commerce com Zend Framework 2
Gerenciamento de produtos
Utilize a helper currencyFormat para formatar o número na moeda desejada:
1{{currencyFormat(produto.preco,  'BRL',  null, 
'pt_BR')}}
32
E-commerce com Zend Framework 2
Gerenciamento de produtos
33
E-commerce com Zend Framework 2
- StringTrim
- StripTags
- RenameUpload
Filtros
Dica: Esses filtros ajudam a prever ataque XSS.
34
E-commerce com Zend Framework 2
- target
- randomize
- overwrite
ZendFilterRenameUpload
35
E-commerce com Zend Framework 2
- ZendValidatorNotEmpty
- messages
- type
Validadores
36
E-commerce com Zend Framework 2
Gerenciamento de produtos
37
E-commerce com Zend Framework 2
- table
- ZendDbAdapterAdapterInterface
- $serviceLocator→get('config')['db']
- ZendDbResultSetResultSetInterface
- ZendDbResultSetHydratingResultSet
ZendDbTableGatewayTableGateway
38
E-commerce com Zend Framework 2
- insert()
- delete()
- update()
- select()
ZendDbTableGatewayTableGateway
Dica: Utilize os recursos de limite e paginação do componente DB do Zf2
para melhor performance.
39
E-commerce com Zend Framework 2
Gerenciamento de produtos
Link: https://github.com/mabez/bird-skeleton/
40
E-commerce com Zend Framework 2
Carrinho de compras
41
E-commerce com Zend Framework 2
Carrinho de compras
42
E-commerce com Zend Framework 2
- name
- manager
- getManager()
ZendSessionContainer
43
E-commerce com Zend Framework 2
- sessionExists()
- start()
- destroy()
- writeClose()
ZendSessionSessionManager
44
E-commerce com Zend Framework 2
Integração com provedor de pagamento
45
E-commerce com Zend Framework 2
Integração com provedor de pagamento
46
E-commerce com Zend Framework 2
ZendHttpClientAdapterCurl
Requisição simples:
1$uri  =  new 
ZendZendUri('https://api.pagamento');
2$curl­>write('POST', $uri), '1.1', array('Content­
Type'  =>  'application/x­www­form­urlencoded; 
charset=utf­8'), 
'USER=usuarioapi&senha=senhaapi&');
47
E-commerce com Zend Framework 2
ZendMvcControllerPluginRedirect
Redirecionamento:
1$controller  =  new  Controller();//essa  deve 
estender  de 
ZendMvcControllerAbstractActionController
2$controller redirect() toUrl('https://pagamento.co→ →
m.br');
48
E-commerce com Zend Framework 2
Conclusão
Cache Storage:
1use ZendCacheStorageFactory;
2$cache = StorageFactory::factory( array(
3 'adapter' => 'memcached',
4 'plugins' => 'serializer'
5));
49
E-commerce com Zend Framework 2
Conclusão
Template Maps:
1return array('template_map' => array(
2 'produto/produto' => __DIR__ .
3 '/../view/produto/index/produto.twig',
4 'produto/lista' => __DIR__ .
5 '/../view/produto/index/lista.twig'
6));
50
E-commerce com Zend Framework 2
Conclusão
Config Caching:
1return array(
2 'module_listener_options' => array(
3 'config_cache_enabled' => true,
4 'module_map_cache_enabled' => true,
5 'cache_dir' => 'data/cache/'
6));
51
E-commerce com Zend Framework 2
Conclusão
ClassMapAutoloader:
1php classmap_generator.php modules
52
E-commerce com Zend Framework 2
Conclusão
Twig:
1return array(
2 'modules' => array(
3 'ZfcTwig',
4 ),
5 'view_manager' => array(
6 'strategies'  => 
array('ZfcTwigViewStrategy')));
53
E-commerce com Zend Framework 2
Conclusão
Link: https://github.com/mabez/bird-skeleton/
54
Conclusão – E-commerce com Zend Framework
2
Faça protótipos
Procure conhecer os recursos do ZF2 para identificar o
que pode atender suas necessidades.
Crie módulos mais desacoplados possível.
55
Visite o stand da 4Linux
56
Perguntas
57
Marcel Bezerra
marcel.bezerra@4linux.com.br
www.4linux.com.br
www.4shot.com.br
Sigam-nos
@4linux
@4shotcursos

Mais conteúdo relacionado

Destaque

Presentasi E- commerce
Presentasi E- commercePresentasi E- commerce
Presentasi E- commerceImam tantowi
 
SparkLabs Global Asia E-Commerce Report 2015
SparkLabs Global Asia E-Commerce Report 2015SparkLabs Global Asia E-Commerce Report 2015
SparkLabs Global Asia E-Commerce Report 2015Bernard Moon
 
Perdagangan Elektronik (E-Commerce)
Perdagangan Elektronik (E-Commerce)Perdagangan Elektronik (E-Commerce)
Perdagangan Elektronik (E-Commerce)Brian Tri Hartanto
 
E commerce
E commerceE commerce
E commerceGBC
 

Destaque (7)

E commerce introduction
E commerce introductionE commerce introduction
E commerce introduction
 
Presentasi E- commerce
Presentasi E- commercePresentasi E- commerce
Presentasi E- commerce
 
SparkLabs Global Asia E-Commerce Report 2015
SparkLabs Global Asia E-Commerce Report 2015SparkLabs Global Asia E-Commerce Report 2015
SparkLabs Global Asia E-Commerce Report 2015
 
Perdagangan Elektronik (E-Commerce)
Perdagangan Elektronik (E-Commerce)Perdagangan Elektronik (E-Commerce)
Perdagangan Elektronik (E-Commerce)
 
E commerce ppt
E commerce pptE commerce ppt
E commerce ppt
 
E commerce
E commerceE commerce
E commerce
 
E commerce
E commerceE commerce
E commerce
 

Semelhante a E-commerce com Zend Framework 2

Arteccom Workshop Magento
Arteccom Workshop MagentoArteccom Workshop Magento
Arteccom Workshop MagentoThiago Verly
 
Produtividade com ZF2, PDT & Zend Server Free Edition
Produtividade com ZF2, PDT & Zend Server Free EditionProdutividade com ZF2, PDT & Zend Server Free Edition
Produtividade com ZF2, PDT & Zend Server Free EditionFlávio Lisboa
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Jaime Neto
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicRicardo Guerra Freitas
 
Processo de Análise e Desenvolvimento de Software (PDS)
Processo de Análise e Desenvolvimento de Software (PDS)Processo de Análise e Desenvolvimento de Software (PDS)
Processo de Análise e Desenvolvimento de Software (PDS)Maicon Amarante
 
Palestra Zend Framework CISL 2012 - ZF no Governo Federal
Palestra Zend Framework CISL 2012 - ZF no Governo FederalPalestra Zend Framework CISL 2012 - ZF no Governo Federal
Palestra Zend Framework CISL 2012 - ZF no Governo FederalFlávio Lisboa
 
Criando API Rest no Zend Framework 2
Criando API Rest no Zend Framework 2Criando API Rest no Zend Framework 2
Criando API Rest no Zend Framework 2Rankest
 
tdc-2022-poa-quem-tem-medo-low-code.pdf
tdc-2022-poa-quem-tem-medo-low-code.pdftdc-2022-poa-quem-tem-medo-low-code.pdf
tdc-2022-poa-quem-tem-medo-low-code.pdfDouglas Siviotti
 
CurriculumVitae_VictorXavier
CurriculumVitae_VictorXavierCurriculumVitae_VictorXavier
CurriculumVitae_VictorXavierVictor Xavier
 
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 Gabriel Machado
 
Dalton Sergio Leonardo Pt Currículo 20160803
Dalton Sergio Leonardo Pt  Currículo 20160803Dalton Sergio Leonardo Pt  Currículo 20160803
Dalton Sergio Leonardo Pt Currículo 20160803Dalton Sergio Leonardo
 
Palestra criando aplicações seguras com php (2)
Palestra  criando aplicações seguras com php (2)Palestra  criando aplicações seguras com php (2)
Palestra criando aplicações seguras com php (2)Leandro Lugaresi
 
Meetup tecnologia - desenvolvimento, infra e processos
Meetup  tecnologia - desenvolvimento, infra e processosMeetup  tecnologia - desenvolvimento, infra e processos
Meetup tecnologia - desenvolvimento, infra e processosGuilherme Veras
 
Demoiselle Behave - Parte 1
Demoiselle Behave - Parte 1Demoiselle Behave - Parte 1
Demoiselle Behave - Parte 1Vanderson Silva
 
Palestra papel do desenvolvedor no sucesso da empresa
Palestra papel do desenvolvedor no sucesso da empresaPalestra papel do desenvolvedor no sucesso da empresa
Palestra papel do desenvolvedor no sucesso da empresaHenrique Nunes Bez Fontana
 
Bastidores de Fabrica de Software
Bastidores de Fabrica de SoftwareBastidores de Fabrica de Software
Bastidores de Fabrica de SoftwareClaudenir Freitas
 
Certificação Zend Framework
Certificação Zend FrameworkCertificação Zend Framework
Certificação Zend FrameworkJaime Neto
 
ZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoMarcos Bezerra
 
Deixando de ser moleque com PHP
Deixando de ser moleque com PHPDeixando de ser moleque com PHP
Deixando de ser moleque com PHPVinícius Krolow
 

Semelhante a E-commerce com Zend Framework 2 (20)

Arteccom Workshop Magento
Arteccom Workshop MagentoArteccom Workshop Magento
Arteccom Workshop Magento
 
Produtividade com ZF2, PDT & Zend Server Free Edition
Produtividade com ZF2, PDT & Zend Server Free EditionProdutividade com ZF2, PDT & Zend Server Free Edition
Produtividade com ZF2, PDT & Zend Server Free Edition
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual Basic
 
Processo de Análise e Desenvolvimento de Software (PDS)
Processo de Análise e Desenvolvimento de Software (PDS)Processo de Análise e Desenvolvimento de Software (PDS)
Processo de Análise e Desenvolvimento de Software (PDS)
 
Palestra Zend Framework no Governo Federal
Palestra Zend Framework  no Governo FederalPalestra Zend Framework  no Governo Federal
Palestra Zend Framework no Governo Federal
 
Palestra Zend Framework CISL 2012 - ZF no Governo Federal
Palestra Zend Framework CISL 2012 - ZF no Governo FederalPalestra Zend Framework CISL 2012 - ZF no Governo Federal
Palestra Zend Framework CISL 2012 - ZF no Governo Federal
 
Criando API Rest no Zend Framework 2
Criando API Rest no Zend Framework 2Criando API Rest no Zend Framework 2
Criando API Rest no Zend Framework 2
 
tdc-2022-poa-quem-tem-medo-low-code.pdf
tdc-2022-poa-quem-tem-medo-low-code.pdftdc-2022-poa-quem-tem-medo-low-code.pdf
tdc-2022-poa-quem-tem-medo-low-code.pdf
 
CurriculumVitae_VictorXavier
CurriculumVitae_VictorXavierCurriculumVitae_VictorXavier
CurriculumVitae_VictorXavier
 
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
 
Dalton Sergio Leonardo Pt Currículo 20160803
Dalton Sergio Leonardo Pt  Currículo 20160803Dalton Sergio Leonardo Pt  Currículo 20160803
Dalton Sergio Leonardo Pt Currículo 20160803
 
Palestra criando aplicações seguras com php (2)
Palestra  criando aplicações seguras com php (2)Palestra  criando aplicações seguras com php (2)
Palestra criando aplicações seguras com php (2)
 
Meetup tecnologia - desenvolvimento, infra e processos
Meetup  tecnologia - desenvolvimento, infra e processosMeetup  tecnologia - desenvolvimento, infra e processos
Meetup tecnologia - desenvolvimento, infra e processos
 
Demoiselle Behave - Parte 1
Demoiselle Behave - Parte 1Demoiselle Behave - Parte 1
Demoiselle Behave - Parte 1
 
Palestra papel do desenvolvedor no sucesso da empresa
Palestra papel do desenvolvedor no sucesso da empresaPalestra papel do desenvolvedor no sucesso da empresa
Palestra papel do desenvolvedor no sucesso da empresa
 
Bastidores de Fabrica de Software
Bastidores de Fabrica de SoftwareBastidores de Fabrica de Software
Bastidores de Fabrica de Software
 
Certificação Zend Framework
Certificação Zend FrameworkCertificação Zend Framework
Certificação Zend Framework
 
ZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoZF Básico - 1. Introdução
ZF Básico - 1. Introdução
 
Deixando de ser moleque com PHP
Deixando de ser moleque com PHPDeixando de ser moleque com PHP
Deixando de ser moleque com PHP
 

Último

Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?E-Commerce Brasil
 
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...E-Commerce Brasil
 
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...E-Commerce Brasil
 
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...Welldonelily Skype
 
Ranking Brasil abril 2024 sites de notícias.pdf
Ranking Brasil abril 2024 sites de notícias.pdfRanking Brasil abril 2024 sites de notícias.pdf
Ranking Brasil abril 2024 sites de notícias.pdfRevista Sociedade Militar
 
representações cartograficas - 1 ano.pptx
representações cartograficas - 1 ano.pptxrepresentações cartograficas - 1 ano.pptx
representações cartograficas - 1 ano.pptxCarladeOliveira25
 
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagensEP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagensLuizPauloFerreira11
 
Conferência SC 24 | Estratégias de precificação: loja própria e marketplace
Conferência SC 24 | Estratégias de precificação: loja própria e marketplaceConferência SC 24 | Estratégias de precificação: loja própria e marketplace
Conferência SC 24 | Estratégias de precificação: loja própria e marketplaceE-Commerce Brasil
 

Último (8)

Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
Conferência SC 24 | Data Analytics e IA: o futuro do e-commerce?
 
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
Conferência SC 24 | Social commerce e recursos interativos: como aplicar no s...
 
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
Conferência SC 24 | A força da geolocalização impulsionada em ADS e Fullcomme...
 
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
Products Catalogue-01-Electronics thin wall heat shrink tubing wire and cable...
 
Ranking Brasil abril 2024 sites de notícias.pdf
Ranking Brasil abril 2024 sites de notícias.pdfRanking Brasil abril 2024 sites de notícias.pdf
Ranking Brasil abril 2024 sites de notícias.pdf
 
representações cartograficas - 1 ano.pptx
representações cartograficas - 1 ano.pptxrepresentações cartograficas - 1 ano.pptx
representações cartograficas - 1 ano.pptx
 
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagensEP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
EP GRUPO - Mídia Kit 2024 - conexão de marcas e personagens
 
Conferência SC 24 | Estratégias de precificação: loja própria e marketplace
Conferência SC 24 | Estratégias de precificação: loja própria e marketplaceConferência SC 24 | Estratégias de precificação: loja própria e marketplace
Conferência SC 24 | Estratégias de precificação: loja própria e marketplace
 

E-commerce com Zend Framework 2

  • 1. E-commerce com Zend Framework 2 Nome Marcel Bezerra Dezembro/2015
  • 2. 2 Conhecendo o palestrante  Formado em Baicharel em Análise de Sistemas e Tecnologia da Informação na FATEC Carapicuiba;  5 anos de experiência com Programação PHP;  Analista de Sistemas e Instrutor: 4Linux;  ZF2 CERTIFIED ARCHITECT; Marcel Bezerra da Silva
  • 3. 3 Conhecendo a 4Linux  Metodologia IT Experience - Cenários reais  Cursos práticos, rápidos e baratos de autores feras: www.4shot.com.br  Projetos complexos de missão crítica, com infra e desenvolvimento PHP
  • 4. 4 Alguns dos nossos clientes A 4Linux suporta o ecossistema de software livre da Caixa. Um dos maiores cases do mundo. Clientes que confiam na qualidade dos serviços da 4Linux.
  • 6. 6 Cursos práticos, rápidos e baratos de autores “feras” www.4shot.com.br
  • 7. 7
  • 8. 8 E-commerce com Zend Framework 2 E-commerce Tags: segurança, internacionalização, layout, desempenho, CRUD.
  • 9. 9 E-commerce com Zend Framework 2 Consumidores, produtos, carrinho de compras, pagamento
  • 10. 10 E-commerce com Zend Framework 2 Prototipação
  • 11. 11 E-commerce com Zend Framework 2 Componentes
  • 12. 12 Agenda – E-commerce com Zend Framework 2 Apresentação Autenticação Gerenciamento de produtos Carrinho de compras Integração com provedores de pagamento Conclusão Perguntas
  • 13. 13 E-commerce com Zend Framework 2 Autenticação
  • 14. 14 E-commerce com Zend Framework 2 Autenticação
  • 15. 15 E-commerce com Zend Framework 2 – bind() - setData() - isValid() - getData() - setHydrator(ZendHydratorHydratorInterface) - setInputFilter(ZendInputFilterInputFilterInterface) ZendZendForm
  • 16. 16 E-commerce com Zend Framework 2 - setData() - isValid() - getValues() - add(ZendInputFilterInputInterface) ZendInputFilterInputFilter
  • 17. 17 E-commerce com Zend Framework 2 - setFilterChain(ZendFilterFilterChain) - setValidatorChain(ZendValidatorValidatorChain) ZendInputFilterInputInterface
  • 18. 18 E-commerce com Zend Framework 2 - getFilters() - attach(ZendFilterFilterInterface) ZendFilterFilterChain
  • 19. 19 E-commerce com Zend Framework 2 - filter($value) ZendFilterFilterInterface
  • 20. 20 E-commerce com Zend Framework 2 - getValidators() - attach(ZendValidatorValidatorInterface) ZendValidatorValidatorChain
  • 21. 21 E-commerce com Zend Framework 2 - isValid($value) - getMessages() ZendValidatorValidatorInterface
  • 22. 22 E-commerce com Zend Framework 2 Autenticação
  • 23. 23 E-commerce com Zend Framework 2 - setIdentify() - setCredential() - authenticate() ZendAuthenticationAdapterDbTable
  • 24. 24 E-commerce com Zend Framework 2 Autenticação
  • 25. 25 E-commerce com Zend Framework 2 - getStorage() - hasIdentity() - getIdentity() ZendAuthenticationAuthenticationService
  • 26. 26 E-commerce com Zend Framework 2 - isEmpty() - read() - write() - clear() ZendAuthenticationStorageStorageInterface
  • 27. 27 E-commerce com Zend Framework 2 Autenticação Http User Agent: 1use ZendSessionValidatorHttpUserAgent; 2use ZendSessionSessionManager; 3$manager = new SessionManager(); 4$manager­>getValidatorChain()­>attach( 5 'session.validate', 6 array(new HttpUserAgent(), 'isValid'));
  • 28. 28 E-commerce com Zend Framework 2 Autenticação Remote Addr: 1use ZendSessionValidatorRemoteAddr; 2use ZendSessionSessionManager; 3$manager = new SessionManager(); 4$manager­>getValidatorChain()­>attach( 5 'session.validate', 6 array(new RemoteAddr(), 'isValid'));
  • 29. 29 E-commerce com Zend Framework 2 Autenticação Link: https://github.com/mabez/bird-skeleton/
  • 30. 30 E-commerce com Zend Framework 2 Gerenciamento de produtos
  • 31. 31 E-commerce com Zend Framework 2 Gerenciamento de produtos Utilize a helper currencyFormat para formatar o número na moeda desejada: 1{{currencyFormat(produto.preco,  'BRL',  null,  'pt_BR')}}
  • 32. 32 E-commerce com Zend Framework 2 Gerenciamento de produtos
  • 33. 33 E-commerce com Zend Framework 2 - StringTrim - StripTags - RenameUpload Filtros Dica: Esses filtros ajudam a prever ataque XSS.
  • 34. 34 E-commerce com Zend Framework 2 - target - randomize - overwrite ZendFilterRenameUpload
  • 35. 35 E-commerce com Zend Framework 2 - ZendValidatorNotEmpty - messages - type Validadores
  • 36. 36 E-commerce com Zend Framework 2 Gerenciamento de produtos
  • 37. 37 E-commerce com Zend Framework 2 - table - ZendDbAdapterAdapterInterface - $serviceLocator→get('config')['db'] - ZendDbResultSetResultSetInterface - ZendDbResultSetHydratingResultSet ZendDbTableGatewayTableGateway
  • 38. 38 E-commerce com Zend Framework 2 - insert() - delete() - update() - select() ZendDbTableGatewayTableGateway Dica: Utilize os recursos de limite e paginação do componente DB do Zf2 para melhor performance.
  • 39. 39 E-commerce com Zend Framework 2 Gerenciamento de produtos Link: https://github.com/mabez/bird-skeleton/
  • 40. 40 E-commerce com Zend Framework 2 Carrinho de compras
  • 41. 41 E-commerce com Zend Framework 2 Carrinho de compras
  • 42. 42 E-commerce com Zend Framework 2 - name - manager - getManager() ZendSessionContainer
  • 43. 43 E-commerce com Zend Framework 2 - sessionExists() - start() - destroy() - writeClose() ZendSessionSessionManager
  • 44. 44 E-commerce com Zend Framework 2 Integração com provedor de pagamento
  • 45. 45 E-commerce com Zend Framework 2 Integração com provedor de pagamento
  • 46. 46 E-commerce com Zend Framework 2 ZendHttpClientAdapterCurl Requisição simples: 1$uri  =  new  ZendZendUri('https://api.pagamento'); 2$curl­>write('POST', $uri), '1.1', array('Content­ Type'  =>  'application/x­www­form­urlencoded;  charset=utf­8'),  'USER=usuarioapi&senha=senhaapi&');
  • 47. 47 E-commerce com Zend Framework 2 ZendMvcControllerPluginRedirect Redirecionamento: 1$controller  =  new  Controller();//essa  deve  estender  de  ZendMvcControllerAbstractActionController 2$controller redirect() toUrl('https://pagamento.co→ → m.br');
  • 48. 48 E-commerce com Zend Framework 2 Conclusão Cache Storage: 1use ZendCacheStorageFactory; 2$cache = StorageFactory::factory( array( 3 'adapter' => 'memcached', 4 'plugins' => 'serializer' 5));
  • 49. 49 E-commerce com Zend Framework 2 Conclusão Template Maps: 1return array('template_map' => array( 2 'produto/produto' => __DIR__ . 3 '/../view/produto/index/produto.twig', 4 'produto/lista' => __DIR__ . 5 '/../view/produto/index/lista.twig' 6));
  • 50. 50 E-commerce com Zend Framework 2 Conclusão Config Caching: 1return array( 2 'module_listener_options' => array( 3 'config_cache_enabled' => true, 4 'module_map_cache_enabled' => true, 5 'cache_dir' => 'data/cache/' 6));
  • 51. 51 E-commerce com Zend Framework 2 Conclusão ClassMapAutoloader: 1php classmap_generator.php modules
  • 52. 52 E-commerce com Zend Framework 2 Conclusão Twig: 1return array( 2 'modules' => array( 3 'ZfcTwig', 4 ), 5 'view_manager' => array( 6 'strategies'  =>  array('ZfcTwigViewStrategy')));
  • 53. 53 E-commerce com Zend Framework 2 Conclusão Link: https://github.com/mabez/bird-skeleton/
  • 54. 54 Conclusão – E-commerce com Zend Framework 2 Faça protótipos Procure conhecer os recursos do ZF2 para identificar o que pode atender suas necessidades. Crie módulos mais desacoplados possível.
  • 55. 55 Visite o stand da 4Linux