SlideShare uma empresa Scribd logo
BONS SISTEMAS DEPENDEM DE BONS
PROGRAMADORES E BOAS FERRAMENTAS, E NÃO
       DE LINGUAGENS ESPECÍFICAS.
















































6 bons motivos para usar Symfony
6 bons motivos para usar Symfony
6 bons motivos para usar Symfony
6 bons motivos para usar Symfony
6 bons motivos para usar Symfony
6 bons motivos para usar Symfony
6 bons motivos para usar Symfony
































































<html>
 <head>
  <title>Comentários da página {{ titulo }}</title>
 </head>
 <body>
    <h1>{{ titulo }} </h1>
    <ul>
    {% for comentario in comentarios %}
      <li>{{ comentario.autor }}: {{ comentario.texto }}</li>
    {% endfor %}
    </ul>
 </body>
</html>
<html>
                                       <head>
                                        <title>Comentários da página <?php echo $titulo; ?></title>
                                       </head>
<html>                                 <body>
 <head>                                   <h1><?php echo $titulo; ?></h1>
                                          <ul>
  <title>Comentários da página {{ titulo }}</title>
                                          <?php foreach ($comentarios as $comentario) { ?>
 </head>                                    <li><?php echo $comentario.texto; ?></li>
 <body>                                   <?php } ?>
    <h1>{{ titulo }} </h1>                </ul>
    <ul>                               </body>
                                      </html>
    {% for comentario in comentarios %}
     <li>{{ comentario.autor }}: {{ comentario.texto }}</li>
    {% endfor %}
    </ul>
 </body>
</html>



   app/config


   app/config



















 doctrine:mapping:import




 doctrine:mapping:import

 doctrine:generate:entities
$product = new Product();
$product->setName('Bicicleta');
$product->setPrice('1900.00');
$product->setDescription('Bicicleta aro 18');

$em = $this->getDoctrine()->getEntityManager();
$em->persist($product);
$em->flush();
$repository = $this->getDoctrine()->
     getRepository('TesteBundle:Product');

$products = $repository->findOneBy(
     array('name' => 'Bicicleta',
           'price' => 1900.00)
);
# app/config/routing.yml

product_show:
    pattern: /produto/{name}
    defaults: { _controller: TestBundle:Product:show }
# src/Test/TestBundle/Controller/ProductController.php

class ProductController extends Controller {

    public function showAction($name) {
        $repository = $this->getDoctrine()
                      ->getRepository(‘TestBundle:Product');
        $product = $repository->findOneByName($name);
        // envia o produto para ser exibido na tela
    }
}


































    /web






php app/console generate:bundle
      --namespace=Test/UserBundle --format=yml
                                Criação do bundle em linha de comando.
# src/Test/UserBundle/Resources/config/routing.yml

hello:
    pattern: /usuario/{name}
    defaults: { _controller: TestUserBundle:User:index }

                        Informa qual a url, o Bundle e a action que será executada.
// src/Test/UserBundle/Controller/UserController.php

class UserController {
    public function indexAction($name) {
        return new Response('<html><body>Olá '
                            .$name.'!</body></html>');
    }
}

                    Recupera o nome pela variável vinda da url e cria o Response.




Introdução ao Symfony 2 - SfCon 2012
Introdução ao Symfony 2 - SfCon 2012
Introdução ao Symfony 2 - SfCon 2012
Introdução ao Symfony 2 - SfCon 2012
Introdução ao Symfony 2 - SfCon 2012

Mais conteúdo relacionado

Mais procurados

JQuery - JS 101
JQuery - JS 101JQuery - JS 101
JQuery - JS 101
TheCoreh
 
Apresentacao codeigniter
Apresentacao codeigniterApresentacao codeigniter
Apresentacao codeigniter
André Tagliati
 
Silex 101
Silex 101Silex 101
Otimização e Escalabilidade
Otimização e EscalabilidadeOtimização e Escalabilidade
Otimização e Escalabilidade
metzen
 
Less
LessLess
Api usando Silex
Api usando SilexApi usando Silex
Api usando Silex
Elton Minetto
 
Plugin zend acl
Plugin zend aclPlugin zend acl
Plugin zend acl
Douglas Lira
 
Apresentações alta performance
Apresentações alta performanceApresentações alta performance
Apresentações alta performance
César Ribeiro
 
Php 02 Primeiros Passos
Php 02 Primeiros PassosPhp 02 Primeiros Passos
Php 02 Primeiros Passos
Regis Magalhães
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 

Mais procurados (10)

JQuery - JS 101
JQuery - JS 101JQuery - JS 101
JQuery - JS 101
 
Apresentacao codeigniter
Apresentacao codeigniterApresentacao codeigniter
Apresentacao codeigniter
 
Silex 101
Silex 101Silex 101
Silex 101
 
Otimização e Escalabilidade
Otimização e EscalabilidadeOtimização e Escalabilidade
Otimização e Escalabilidade
 
Less
LessLess
Less
 
Api usando Silex
Api usando SilexApi usando Silex
Api usando Silex
 
Plugin zend acl
Plugin zend aclPlugin zend acl
Plugin zend acl
 
Apresentações alta performance
Apresentações alta performanceApresentações alta performance
Apresentações alta performance
 
Php 02 Primeiros Passos
Php 02 Primeiros PassosPhp 02 Primeiros Passos
Php 02 Primeiros Passos
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 

Semelhante a Introdução ao Symfony 2 - SfCon 2012

modernizando a arquitertura de sua aplicação
modernizando a arquitertura  de sua aplicaçãomodernizando a arquitertura  de sua aplicação
modernizando a arquitertura de sua aplicação
Antonio Spinelli
 
Meu projeto final - Neobase 2.0
Meu projeto final - Neobase 2.0Meu projeto final - Neobase 2.0
Meu projeto final - Neobase 2.0
Saulo Vallory
 
Tutorial.yii
Tutorial.yiiTutorial.yii
Tutorial.yii
Renato Mendes
 
Play Framework - FLISOL
Play Framework - FLISOLPlay Framework - FLISOL
Play Framework - FLISOL
grupoweblovers
 
Introdução a Desenvolvimento Web
Introdução a Desenvolvimento WebIntrodução a Desenvolvimento Web
Introdução a Desenvolvimento Web
PeslPinguim
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um Framework
Pablo Dall'Oglio
 
Curso de Ruby on Rails - Aula 03
Curso de Ruby on Rails - Aula 03Curso de Ruby on Rails - Aula 03
Curso de Ruby on Rails - Aula 03
Maurício Linhares
 
Como criar um plugin para WordPress
Como criar um plugin para WordPressComo criar um plugin para WordPress
Como criar um plugin para WordPress
Leandrinho Vieira
 
Aplicacoes Rapidas Para Web Com Django
Aplicacoes Rapidas Para Web Com DjangoAplicacoes Rapidas Para Web Com Django
Aplicacoes Rapidas Para Web Com Django
Diemesleno Souza Carvalho
 
Mini curso de django
Mini curso de djangoMini curso de django
Mini curso de django
rosenclever
 
PHP básico para iniciantes
PHP básico para iniciantesPHP básico para iniciantes
PHP básico para iniciantes
Eduardo Mendes
 
Desenvolvimento ágil com Kohana framework
Desenvolvimento ágil com Kohana frameworkDesenvolvimento ágil com Kohana framework
Desenvolvimento ágil com Kohana framework
Marcelo Rodrigo
 
Como criar um tema para WordPress
Como criar um tema para WordPressComo criar um tema para WordPress
Como criar um tema para WordPress
Rafael Funchal
 
Código legado - PHP Conference Brasil - 2014
Código legado - PHP Conference Brasil - 2014Código legado - PHP Conference Brasil - 2014
Código legado - PHP Conference Brasil - 2014
Michael Castillo Granados
 
ZF Básico - 4. Controle e Visão
ZF Básico - 4. Controle e VisãoZF Básico - 4. Controle e Visão
ZF Básico - 4. Controle e Visão
Marcos Bezerra
 
PHP ao Extremo
PHP ao ExtremoPHP ao Extremo
PHP ao Extremo
Thiago Rigo
 
Angular js
Angular jsAngular js
Angular js
Bruno Catão
 
Php aula1
Php aula1Php aula1
Aplicações rápidas para a Web com Django
Aplicações rápidas para a Web com DjangoAplicações rápidas para a Web com Django
Aplicações rápidas para a Web com Django
Freedom DayMS
 
MeetUp WP Floripa - dicas simples de como deixar o admin com a cara do seu cl...
MeetUp WP Floripa - dicas simples de como deixar o admin com a cara do seu cl...MeetUp WP Floripa - dicas simples de como deixar o admin com a cara do seu cl...
MeetUp WP Floripa - dicas simples de como deixar o admin com a cara do seu cl...
InCuca
 

Semelhante a Introdução ao Symfony 2 - SfCon 2012 (20)

modernizando a arquitertura de sua aplicação
modernizando a arquitertura  de sua aplicaçãomodernizando a arquitertura  de sua aplicação
modernizando a arquitertura de sua aplicação
 
Meu projeto final - Neobase 2.0
Meu projeto final - Neobase 2.0Meu projeto final - Neobase 2.0
Meu projeto final - Neobase 2.0
 
Tutorial.yii
Tutorial.yiiTutorial.yii
Tutorial.yii
 
Play Framework - FLISOL
Play Framework - FLISOLPlay Framework - FLISOL
Play Framework - FLISOL
 
Introdução a Desenvolvimento Web
Introdução a Desenvolvimento WebIntrodução a Desenvolvimento Web
Introdução a Desenvolvimento Web
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um Framework
 
Curso de Ruby on Rails - Aula 03
Curso de Ruby on Rails - Aula 03Curso de Ruby on Rails - Aula 03
Curso de Ruby on Rails - Aula 03
 
Como criar um plugin para WordPress
Como criar um plugin para WordPressComo criar um plugin para WordPress
Como criar um plugin para WordPress
 
Aplicacoes Rapidas Para Web Com Django
Aplicacoes Rapidas Para Web Com DjangoAplicacoes Rapidas Para Web Com Django
Aplicacoes Rapidas Para Web Com Django
 
Mini curso de django
Mini curso de djangoMini curso de django
Mini curso de django
 
PHP básico para iniciantes
PHP básico para iniciantesPHP básico para iniciantes
PHP básico para iniciantes
 
Desenvolvimento ágil com Kohana framework
Desenvolvimento ágil com Kohana frameworkDesenvolvimento ágil com Kohana framework
Desenvolvimento ágil com Kohana framework
 
Como criar um tema para WordPress
Como criar um tema para WordPressComo criar um tema para WordPress
Como criar um tema para WordPress
 
Código legado - PHP Conference Brasil - 2014
Código legado - PHP Conference Brasil - 2014Código legado - PHP Conference Brasil - 2014
Código legado - PHP Conference Brasil - 2014
 
ZF Básico - 4. Controle e Visão
ZF Básico - 4. Controle e VisãoZF Básico - 4. Controle e Visão
ZF Básico - 4. Controle e Visão
 
PHP ao Extremo
PHP ao ExtremoPHP ao Extremo
PHP ao Extremo
 
Angular js
Angular jsAngular js
Angular js
 
Php aula1
Php aula1Php aula1
Php aula1
 
Aplicações rápidas para a Web com Django
Aplicações rápidas para a Web com DjangoAplicações rápidas para a Web com Django
Aplicações rápidas para a Web com Django
 
MeetUp WP Floripa - dicas simples de como deixar o admin com a cara do seu cl...
MeetUp WP Floripa - dicas simples de como deixar o admin com a cara do seu cl...MeetUp WP Floripa - dicas simples de como deixar o admin com a cara do seu cl...
MeetUp WP Floripa - dicas simples de como deixar o admin com a cara do seu cl...
 

Mais de Hugo Magalhães

How to develop reusable components with Babel and Rollup.js
How to develop reusable components with Babel and Rollup.jsHow to develop reusable components with Babel and Rollup.js
How to develop reusable components with Babel and Rollup.js
Hugo Magalhães
 
Inbound Marketing - A nova forma de se comunicar e conquistar seus clientes
Inbound Marketing - A nova forma de se comunicar e conquistar seus clientesInbound Marketing - A nova forma de se comunicar e conquistar seus clientes
Inbound Marketing - A nova forma de se comunicar e conquistar seus clientes
Hugo Magalhães
 
Conhecendo os fundamentos e desenvolvendo uma apliação básica com Angular2
Conhecendo os fundamentos e desenvolvendo uma apliação básica com Angular2Conhecendo os fundamentos e desenvolvendo uma apliação básica com Angular2
Conhecendo os fundamentos e desenvolvendo uma apliação básica com Angular2
Hugo Magalhães
 
Empreendedorismo e as Oportunidades Disfarçadas
Empreendedorismo e as Oportunidades DisfarçadasEmpreendedorismo e as Oportunidades Disfarçadas
Empreendedorismo e as Oportunidades Disfarçadas
Hugo Magalhães
 
Mídias Sociais para Negócios
Mídias Sociais para NegóciosMídias Sociais para Negócios
Mídias Sociais para Negócios
Hugo Magalhães
 
SEO - Como e Porque Otimizar Um Website - Semana da Informática - UFV
SEO - Como e Porque Otimizar Um Website - Semana da Informática - UFVSEO - Como e Porque Otimizar Um Website - Semana da Informática - UFV
SEO - Como e Porque Otimizar Um Website - Semana da Informática - UFV
Hugo Magalhães
 

Mais de Hugo Magalhães (6)

How to develop reusable components with Babel and Rollup.js
How to develop reusable components with Babel and Rollup.jsHow to develop reusable components with Babel and Rollup.js
How to develop reusable components with Babel and Rollup.js
 
Inbound Marketing - A nova forma de se comunicar e conquistar seus clientes
Inbound Marketing - A nova forma de se comunicar e conquistar seus clientesInbound Marketing - A nova forma de se comunicar e conquistar seus clientes
Inbound Marketing - A nova forma de se comunicar e conquistar seus clientes
 
Conhecendo os fundamentos e desenvolvendo uma apliação básica com Angular2
Conhecendo os fundamentos e desenvolvendo uma apliação básica com Angular2Conhecendo os fundamentos e desenvolvendo uma apliação básica com Angular2
Conhecendo os fundamentos e desenvolvendo uma apliação básica com Angular2
 
Empreendedorismo e as Oportunidades Disfarçadas
Empreendedorismo e as Oportunidades DisfarçadasEmpreendedorismo e as Oportunidades Disfarçadas
Empreendedorismo e as Oportunidades Disfarçadas
 
Mídias Sociais para Negócios
Mídias Sociais para NegóciosMídias Sociais para Negócios
Mídias Sociais para Negócios
 
SEO - Como e Porque Otimizar Um Website - Semana da Informática - UFV
SEO - Como e Porque Otimizar Um Website - Semana da Informática - UFVSEO - Como e Porque Otimizar Um Website - Semana da Informática - UFV
SEO - Como e Porque Otimizar Um Website - Semana da Informática - UFV
 

Último

Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
Danilo Pinotti
 
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Gabriel de Mattos Faustino
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
Faga1939
 

Último (8)

Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
 
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
 

Introdução ao Symfony 2 - SfCon 2012