20
Symfony2 Введение

Symfony2. Lesson 1

Embed Size (px)

Citation preview

Page 1: Symfony2. Lesson 1

Symfony2

Введение

Page 2: Symfony2. Lesson 1

О себе

Дорошенко Владимир

http://about.me/vl4dimir

Skype: v14d1m1rEmail: [email protected]

Page 3: Symfony2. Lesson 1

План

● Введение в Symfony2● Composer - менеджер зависимостей для

PHP

Page 4: Symfony2. Lesson 1

Web Application Frameworks● CakePHP● CodeIgniter● Drupal● Kohana● Lavarel● Silex● Symfony● Yii● Zend Framework

?

Page 5: Symfony2. Lesson 1

Symfony2 - первый взгляд

● свободно распространяемый (MIT) web application framework

● реализует паттерн MVC● PHP 5● спонсируется компанией Sensio

Page 6: Symfony2. Lesson 1

Symfony2 harmony

Framework

Philosophy Community

Toolbox Methodology

Page 7: Symfony2. Lesson 1

История● 1.0 Январь 2007 (>= 5.0)● 1.2 Декабрь 2008 (>= 5.2)● 1.4 Ноябрь 2009 (>= 5.2.4)

● 2.0 Июль 2011 (>= 5.3.2)● 2.1 Сентябрь 2012 (>= 5.3.3)● 2.2 Март 2013 (>= 5.3.3)● 2.3 Май 2013 (>= 5.3.3)

Page 8: Symfony2. Lesson 1

Управление зависимостями

ProjectFacebook

SDKv 3.2.2

Doctrine ORM v 2.2.*

Monologv 1.5.*

Page 9: Symfony2. Lesson 1

Composer - установка

http://getcomposer.org/doc/

$ curl -sS https://getcomposer.org/installer | php

$ php composer.phar

Page 10: Symfony2. Lesson 1

composer.json

{ "require": { "monolog/monolog": "1.5.*" }}

Page 11: Symfony2. Lesson 1

composer.json

>, >=, <, <=, != >=1.0,<2.0

* 1.0.* [>=1.0,<1.1]

~ ~1.2 [>=1.2,<2.0]~1.2.3 [>=1.2.3,<1.3]

dev-{branchname} dev-master

Page 12: Symfony2. Lesson 1

Репозитории - packagist

Page 13: Symfony2. Lesson 1

Репозитории - VCS

{ "repositories": [ { "type": "vcs", "url": "https://github.com/igorw/monolog" } ], "require": { "monolog/monolog": "dev-bugfix" }}

Page 14: Symfony2. Lesson 1

Репозитории - PEAR{ "repositories": [ { "type": "pear", "url": "http://pear2.php.net" } ], "require": { "pear-pear2.php.net/PEAR2_Text_Markdown": "*", "pear-pear2/PEAR2_HTTP_Request": "*" }}

Page 15: Symfony2. Lesson 1

Репозитории - package{ "repositories": [ { "type": "package", "package": { "name": "smarty/smarty", "version": "3.1.7", "dist": { "url": "http://www.smarty.net/files/Smarty-3.1.7.zip", "type": "zip" }, "autoload": { "classmap": ["libs/"] } } } ], "require": { "smarty/smarty": "3.1.*" }}

Page 16: Symfony2. Lesson 1

Установка зависимостей

$ php composer.phar install

Page 17: Symfony2. Lesson 1

Autoloading

require 'vendor/autoload.php';

Page 18: Symfony2. Lesson 1

Autoloading

{ "autoload": { "psr-0": {"": "src/"} }}

Page 19: Symfony2. Lesson 1

composer.lock

$ php composer.phar update

$ php composer.phar update monolog/monolog

Page 20: Symfony2. Lesson 1

THE END