SlideShare a Scribd company logo
Enviar pesquisa
Carregar
Entrar
Cadastre-se
Migrare da symfony 1 a Symfony2
Denunciar
Massimiliano Arione
Seguir
PHP developer em freelance
6 de Oct de 2012
•
0 gostou
•
929 visualizações
1
de
23
Migrare da symfony 1 a Symfony2
6 de Oct de 2012
•
0 gostou
•
929 visualizações
Baixar agora
Baixar para ler offline
Denunciar
Tecnologia
Massimiliano Arione
Seguir
PHP developer em freelance
Recomendados
Building Your First Widget
Chris Wilcoxson
2.5K visualizações
•
46 slides
Exemple de création de base
Saber LAJILI
539 visualizações
•
2 slides
How kris-writes-symfony-apps-london
Kris Wallsmith
3.7K visualizações
•
75 slides
Bacbkone js
Артём Курапов
483 visualizações
•
32 slides
Et si on en finissait avec CRUD ?
Julien Vinber
24 visualizações
•
38 slides
Barcelona.pm Curs1211 sess01
Javier Arturo Rodríguez
536 visualizações
•
44 slides
Mais conteúdo relacionado
Mais procurados
Love and Loss: A Symfony Security Play
Kris Wallsmith
12.6K visualizações
•
77 slides
Php if
nurhardianti98
11 visualizações
•
2 slides
6. hello popescu 2
Razvan Raducanu, PhD
128 visualizações
•
10 slides
London XQuery Meetup: Querying the World (Web Scraping)
Dennis Knochenwefel
740 visualizações
•
18 slides
Traavle finalpresentation
mlottko
123 visualizações
•
7 slides
Facebook
Dan Michael Molina
335 visualizações
•
8 slides
Mais procurados
(20)
Love and Loss: A Symfony Security Play
Kris Wallsmith
•
12.6K visualizações
Php if
nurhardianti98
•
11 visualizações
6. hello popescu 2
Razvan Raducanu, PhD
•
128 visualizações
London XQuery Meetup: Querying the World (Web Scraping)
Dennis Knochenwefel
•
740 visualizações
Traavle finalpresentation
mlottko
•
123 visualizações
Facebook
Dan Michael Molina
•
335 visualizações
TerminalでTwitter
Yoshihiro Sugi
•
1.4K visualizações
Add loop shortcode
Peter Baylies
•
316 visualizações
全裸でワンライナー(仮)
Yoshihiro Sugi
•
1.7K visualizações
BDD revolution - or how we came back from hell
Mateusz Zalewski
•
112 visualizações
jQuery Namespace Pattern
Diego Fleury
•
11.6K visualizações
Ch6(mysql front)
Chhom Karath
•
130 visualizações
Five things for you - Yahoo developer offers
Christian Heilmann
•
5.6K visualizações
Jquery Fundamentals
Rebecca Murphey
•
2.4K visualizações
distill
Thomas Knudstrup
•
217 visualizações
An Introduction to Jquery
Phil Reither
•
730 visualizações
Erik mogensen stowe
Erik Mogensen
•
330 visualizações
var, let in SIL
Yusuke Kita
•
474 visualizações
DOS
Papun Papun
•
349 visualizações
Kasdorf, EPUB 3: Not Your Father’s EPUB
National Information Standards Organization (NISO)
•
92 visualizações
Destaque
Gestione delle dipendenze con Composer
Massimiliano Arione
1K visualizações
•
16 slides
Lessons learned in PHP
Massimiliano Arione
1.2K visualizações
•
10 slides
symfony & jQuery (PUG)
Massimiliano Arione
701 visualizações
•
19 slides
Case study OmniAuto.it
Massimiliano Arione
629 visualizações
•
13 slides
Sviluppo rapido di applicazioni con PHP
Massimiliano Arione
541 visualizações
•
14 slides
Paypal + symfony
Massimiliano Arione
2.7K visualizações
•
11 slides
Destaque
(7)
Gestione delle dipendenze con Composer
Massimiliano Arione
•
1K visualizações
Lessons learned in PHP
Massimiliano Arione
•
1.2K visualizações
symfony & jQuery (PUG)
Massimiliano Arione
•
701 visualizações
Case study OmniAuto.it
Massimiliano Arione
•
629 visualizações
Sviluppo rapido di applicazioni con PHP
Massimiliano Arione
•
541 visualizações
Paypal + symfony
Massimiliano Arione
•
2.7K visualizações
PHP, non lo stesso vecchio linguaggio
Massimiliano Arione
•
1.4K visualizações
Similar a Migrare da symfony 1 a Symfony2
Symfony2 Building on Alpha / Beta technology
Daniel Knell
750 visualizações
•
59 slides
Be RESTful (Symfony Camp 2008)
Fabien Potencier
1.2K visualizações
•
50 slides
How Kris Writes Symfony Apps
Kris Wallsmith
17.1K visualizações
•
116 slides
Doctrine For Beginners
Jonathan Wage
1.5K visualizações
•
69 slides
Unittests für Dummies
Lars Jankowfsky
1K visualizações
•
28 slides
Separation of concerns - DPC12
Stephan Hochdörfer
2.3K visualizações
•
62 slides
Similar a Migrare da symfony 1 a Symfony2
(20)
Symfony2 Building on Alpha / Beta technology
Daniel Knell
•
750 visualizações
Be RESTful (Symfony Camp 2008)
Fabien Potencier
•
1.2K visualizações
How Kris Writes Symfony Apps
Kris Wallsmith
•
17.1K visualizações
Doctrine For Beginners
Jonathan Wage
•
1.5K visualizações
Unittests für Dummies
Lars Jankowfsky
•
1K visualizações
Separation of concerns - DPC12
Stephan Hochdörfer
•
2.3K visualizações
How I started to love design patterns
Samuel ROZE
•
1.3K visualizações
Symfony tips and tricks
Mariusz Kozłowski
•
599 visualizações
ZFConf 2010: Zend Framework & MVC, Model Implementation (Part 2, Dependency I...
ZFConf Conference
•
1.7K visualizações
Lithium Best
Richard McIntyre
•
1.8K visualizações
Apostrophe
tompunk
•
5.4K visualizações
Unit testing after Zend Framework 1.8
Michelangelo van Dam
•
33.7K visualizações
Magento Live Australia 2016: Request Flow
Vrann Tulika
•
302 visualizações
Rich domain model with symfony 2.5 and doctrine 2.5
Leonardo Proietti
•
12K visualizações
Lecture 17 - PHP-Object-Orientation.pptx
DavidLazar17
•
3 visualizações
Advanced symfony Techniques
Kris Wallsmith
•
5.4K visualizações
Refactoring using Codeception
Jeroen van Dijk
•
1.9K visualizações
Your Entity, Your Code
Marco Vito Moscaritolo
•
770 visualizações
Your Entity, Your Code
DrupalDay
•
884 visualizações
PHP || [Student Result Management System]
Jiangxi University of Science and Technology (江西理工大学)
•
119 visualizações
Mais de Massimiliano Arione
Typed models pug roma febbraio 2020
Massimiliano Arione
148 visualizações
•
18 slides
Pipelines!
Massimiliano Arione
228 visualizações
•
24 slides
Il nostro amico Stan
Massimiliano Arione
313 visualizações
•
34 slides
PSR7 - interoperabilità HTTP
Massimiliano Arione
764 visualizações
•
25 slides
Disinstallare fos user bundle e vivere felici
Massimiliano Arione
795 visualizações
•
23 slides
MAGA - PUG Roma giugno 2017
Massimiliano Arione
740 visualizações
•
29 slides
Mais de Massimiliano Arione
(18)
Typed models pug roma febbraio 2020
Massimiliano Arione
•
148 visualizações
Pipelines!
Massimiliano Arione
•
228 visualizações
Il nostro amico Stan
Massimiliano Arione
•
313 visualizações
PSR7 - interoperabilità HTTP
Massimiliano Arione
•
764 visualizações
Disinstallare fos user bundle e vivere felici
Massimiliano Arione
•
795 visualizações
MAGA - PUG Roma giugno 2017
Massimiliano Arione
•
740 visualizações
PHP7 e Rich Domain Model
Massimiliano Arione
•
1K visualizações
PHP on the desktop
Massimiliano Arione
•
1.2K visualizações
Scrivere e leggere log con elastic
Massimiliano Arione
•
1K visualizações
The metrics
Massimiliano Arione
•
480 visualizações
Managing frontend libs in your Symfony project
Massimiliano Arione
•
537 visualizações
Translating symfony docs
Massimiliano Arione
•
605 visualizações
Managing frontend libs in your php project
Massimiliano Arione
•
716 visualizações
Gestire librerie di frontend in php
Massimiliano Arione
•
2.6K visualizações
Symfony: un framework per il web
Massimiliano Arione
•
384 visualizações
symfony & jQuery (phpDay)
Massimiliano Arione
•
1.2K visualizações
Symfony ignite
Massimiliano Arione
•
453 visualizações
Phpcon2009 Php e Sicurezza
Massimiliano Arione
•
541 visualizações
Último
Dennis Wendland_The i4Trust Collaboration Programme.pptx
FIWARE
16 visualizações
•
17 slides
Webhook Testing Strategy
Dimpy Adhikary
99 visualizações
•
10 slides
How resolve Gem dependencies in your code?
Hiroshi SHIBATA
169 visualizações
•
50 slides
Google cloud Study Jam 2023.pptx
GDSCNiT
489 visualizações
•
56 slides
Product Research Presentation-Maidy Veloso.pptx
MaidyVeloso
44 visualizações
•
23 slides
The Flutter Job Market At The Moment
Ahmed Abu Eldahab
44 visualizações
•
44 slides
Último
(20)
Dennis Wendland_The i4Trust Collaboration Programme.pptx
FIWARE
•
16 visualizações
Webhook Testing Strategy
Dimpy Adhikary
•
99 visualizações
How resolve Gem dependencies in your code?
Hiroshi SHIBATA
•
169 visualizações
Google cloud Study Jam 2023.pptx
GDSCNiT
•
489 visualizações
Product Research Presentation-Maidy Veloso.pptx
MaidyVeloso
•
44 visualizações
The Flutter Job Market At The Moment
Ahmed Abu Eldahab
•
44 visualizações
Knowledge Graphs and Generative AI_GraphSummit Minneapolis Sept 20.pptx
Neo4j
•
49 visualizações
"Exploring MACH Principles", Nikita Galkin
Fwdays
•
21 visualizações
GIT AND GITHUB (1).pptx
GDSCCVRGUPoweredbyGo
•
57 visualizações
"Intro to Stateful Services or How to get 1 million RPS from a single node", ...
Fwdays
•
19 visualizações
Solving today’s Traffic Problems with Sustainable Ride Hailing Solution
On Demand Clone
•
44 visualizações
Common WordPress APIs_ Settings API
Jonathan Bossenger
•
32 visualizações
GDSC ZHCET Google Study Jams 23.pdf
AbhishekSingh313342
•
26 visualizações
Reward Innovation for long-term member satisfaction
Jiangwei Pan
•
46 visualizações
alfred-product-research-proposal.pdf
AlfredSuratos
•
24 visualizações
RemeOs science and clinical data 20230926_PViv2 (4).pptx
PetrusViitanen1
•
22 visualizações
9C Monthly Newsletter - SEPT 2023
PublishingTeam
•
258 visualizações
OpenAI API crash course
Dimitrios Platis
•
22 visualizações
Product Research Presentation-Maidy Veloso.pptx
MaidyVeloso
•
41 visualizações
"Software Architecture for Humans!", Eberhard Wolff
Fwdays
•
22 visualizações
Migrare da symfony 1 a Symfony2
1.
Migrare da symfony
1 a Symfony2 Massimiliano Arione @garakkio Torino, 5 ottobre 2012
2.
symfony 1 end
of life: nov. 2012
3.
cosa non è
Symfony 2
4.
cosa non è
Symfony 2
5.
cosa è Symfony2
6.
Dependency Injection Container
7.
come funziona il
DIC <?php $mailer = $this->get('mailer');
8.
come funziona il
DIC <?php $mailer = $this->get('mailer'); niente più sfContext!
9.
come funziona il
DIC <?php $mailer = $this->get('newsletter'); <?php namespace AcmeMyBundle; class Newsletter { protected $mailer; public function __construct(Swift_Mailer $mailer) { $this->mailer = $mailer; } }
10.
come funziona il
DIC <?php namespace AcmeMyBundle; use DoctrineORMEntityManager; class Newsletter { protected $mailer, $em; public function __construct(Swift_Mailer $mailer, EntityManager $em) { $this->mailer = $mailer; $this->em = $em; } }
11.
test
12.
model
13.
model $ app/console doctrine:mapping:import
AcmeMyBundle annotation $ app/console doctrine:generate:entities AcmeMyBundle --no-backup
14.
model <?php namespace AcmeMyBundleEntity; use DoctrineORMMapping
as ORM; /** * @ORMTable(name="category") * @ORMEntity */ class Category { /** * @ORMColumn(name="id", type="integer") * @ORMId * @ORMGeneratedValue(strategy="AUTO") */ private $id; /** * @ORMColumn(name="name", type="string", length=255) */ private $name; }
15.
alcuni bundle da
aggiungere stof/doctrine-extensions-bundle friendsofsymfony/user-bundle sonata-project/doctrine-orm-admin-bundle
16.
alcuni bundle da
aggiungere stof/doctrine-extensions-bundle (sf1: behaviours) friendsofsymfony/user-bundle (sf1: sfGuardPlugin) sonata-project/doctrine-orm-admin-bundle (sf1: admin generator)
17.
controller <?php /**
* Lists all Category entities. * * @Route("/", name="category") * @Template() */ public function indexAction() { $em = $this->getDoctrine()->getManager(); $entities = $em->getRepository('AcmeMyBundle:Category')->findAll(); return array( 'entities' => $entities, ); }
18.
controller /** * @Route("/{id}/show",
name="category_show") * @Template() */ public function showAction($id) { $em = $this->getDoctrine()->getManager(); $entity = $em->getRepository('AcmeMyBundle:Category')->find($id); if (!$entity) { throw $this->createNotFoundException('Unable to find Category entity.'); } $deleteForm = $this->createDeleteForm($id); return array( 'entity' => $entity, 'delete_form' => $deleteForm->createView(), ); }
19.
/**
* @Route("/create", name="category_create") * @Method("POST") controller * @Template("AcmeMyBundle:Category:new.html.twig") */ public function createAction(Request $request) { $entity = new Category(); $form = $this->createForm(new CategoryType(), $entity); $form->bind($request); if ($form->isValid()) { $em = $this->getDoctrine()->getManager(); $em->persist($entity); $em->flush(); return $this->redirect($this->generateUrl('category_show', array('id' => $entity->getId()))); } return array( 'entity' => $entity, 'form' => $form->createView(), ); }
20.
view {% extends 'AcmeMyBundle::layout.html.twig'
%} {% block content %} <h1>Category list</h1> <table class="table table-striped table-hover table-bordered records_list"> <tbody> {% for entity in paginator %} <tr> <td><a href="{{ path('category_show', { 'id': entity.id }) }}">{{ entity.id }}</a></td> <td>{{ entity.name }}</td> <td class="btn-group"> {# ... #} </td> </tr> {% endfor %} </tbody> </table> {% endblock %}
21.
cache http
22.
domande?
23.
grazie! links http://twitter.com/garakkio http://www.slideshare.net/garak credits http://text2pic.com/ http://symfony.com/trademark http://php.net/download-logos.php http://doophp.com/temp/guide/mvcabout.png http://grigio.org/html5-linux-day/stuff/client-server.png https://elearning.industriallogic.com/gh/albums/wrappersAndWalkers/injector/images/big-tomatoes.gif http://openclipart.org/image/800px/svg_to_png/94723/db.png http://clivemind.com/wp-content/uploads/2012/07/logo.png http://www.kidsvoting.dreamhosters.com/uploads/images/vote_1.jpg http://markup.su/highlighter/