SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Instalación y Primeros
Pasos
Realizada por:
Diego Barros |@imnzombie
Diego Ramirez |@thedarsideofit
Para: Hydras C&S |@hydras_cs
Basada en Libro Symfony 2 en español Nacho Pacheco
Creando páginas en Symfony2
Dos pasos
● Crear una ruta.
● Crear un controlador
Creando páginas en Symfony2
La página «¡Hola Symfony!»
En realidad la palabra Symfony podrá ser
reemplazada por cualquier término
http://localhost/app_dev.php/hello/Symfony
Creando páginas en Symfony2
Creando el bundle
Este comando realiza dos cosas:
● Crea el directorio en src/Acme/HelloBundle
● Registra el bundle en el kernel de la
aplicación AppKernel
$ php app/console generate:bundle --
namespace=Acme/HelloBundle --format=yml
Creando páginas en Symfony2
Creando las rutas usando YML
# app/config/routing.yml
acme_hello:
resource: @AcmeHelloBundle/Resources/config/routing.
yml"
prefix: /
# src/Acme/HelloBundle/Resources/config/routing.yml
hello:
pattern: /hello/{name}
defaults: { _controller: AcmeHelloBundle:Hello:index }
Creando páginas en Symfony2
Creando las acciones del controlador
// src/Acme/HelloBundle/Controller/HelloController.php
namespace AcmeHelloBundleController;
use SymfonyComponentHttpFoundationResponse;
class HelloController
{
public function indexAction($name)
{
return new Response('<html><body>Hello'
$name.'!</body></html>');
}
}
Creando páginas en Symfony2
Creando las acciones del controlador
// src/Acme/HelloBundle/Controller/HelloController.php
namespace AcmeHelloBundleController;
use SymfonyBundleFrameworkBundleControllerController;
class HelloController extends Controller
{
public function indexAction($name)
{
return $this->render(
'AcmeHelloBundle:Hello:index.html.twig',
array('name' => $name)
);
}
}
Creando páginas en Symfony2
Convenciones de nombres
Creando la plantilla con Twig
BundleName:ControllerName:TemplateName
/path/to/BundleName/Resources/views/ControllerName/Te
mplateName
{# src/Acme/HelloBundle/Resources/views/Hello/index.html.twig #}
{% extends '::base.html.twig' %}
{% block body %}
Hello {{ name }}!
{% endblock %}
Creando páginas en Symfony2
Estructura de la plantilla base
{# app/Resources/views/base.html.twig #}
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>{% block title %}Welcome!{% endblock %}</title>
{% block stylesheets %}{% endblock %}
<link rel="shortcut icon" href="{{ asset('favicon.ico') }}" />
</head>
<body>
{% block body %}{% endblock %}
{% block javascripts %}{% endblock %}
</body>
</html>
Estructura de Directorios
● app/: Este directorio contiene la configuración de la
aplicación;
● src/: Todo el código PHP del proyecto se almacena en este
directorio;
● vendor/: Por convención aquí se coloca cualquier biblioteca
de terceros;
● web/: Este es el directorio web raíz y contiene todos los
archivos de acceso público;
● El controlador frontal:
// web/app.php
require_once __DIR__.'/../app/bootstrap.php.cache';
require_once __DIR__.'/../app/AppKernel.php';
use SymfonyComponentHttpFoundationRequest;
$kernel = new AppKernel('prod', false);
$kernel->loadClassCache();
$kernel->handle(Request::createFromGlobals())->send();
Estructura de Directorios
Estructura de un bundle:
● Controller/ Contiene los controladores del paquete (por ejemplo,
HelloController.php);
● DependencyInjection/ mantiene ciertas extensiones para las clases de
inyección de dependencias, qué configuración puede importar el servicio,
registra uno o más pases del compilador (este directorio no es necesario);
● Resources/config/ Contiene la configuración, incluyendo la configuración
de enrutado (por ejemplo, routing.yml);
● Resources/views/ Contiene las plantillas organizadas por nombre de
controlador (por ejemplo, Hello/index.html.twig);
● Resources/public/ Contiene recursos web (imágenes, hojas de estilo,
etc.) y es copiado o enlazado simbólicamente al directorio web/ del
proyecto vía la orden de consola assets:install;
● Tests/ Tiene todas las pruebas para el paquete.
Entornos
Por defecto Symfony propone tres entornos:
● prod: sólo se registran los errores (log) y
utiliza la cache.
● dev: no se utiliza la cache, se muestran las
excepciones detalladas se muestra la
symfony developer toolbar
● test: se utiliza cuando se ejecutan pruebas
automáticas y no se puede acceder
directamente a través del navegador
Instalación
● Primero debemos verificar que nuestros servicios Apache y de
base de datos, ya sea PostgreSQL, MySQL, Mongo, etc.. estén en
funcionamiento.
● Posterior configurar los correspondientes servicios.
● Realizar la puesta en desarrollo y configurar el entorno.
Pasos a seguir:
Para el mayor enfoque sobre el framework en este
curso utilizaremos el paquete XAMPP(Apache,
MySQL, PHP, Perl)
Una vez realizada la instalación de XAMPP podemos
acceder al home a través del browser mediante la url:
http://localhost
Nos encontraremos con la información pertinente en lo respecta versión
funcionamiento del XAMPP, phpMyAdmin para administrar la Base de
Datos MySQL
Además cuenta con un panel administrador para establecer el estado de
los servicios
Ver los logs, configurar los archivos principales.
En las distribuciones de GNU Linux contamos con
un comando para visualizar los logs muy útil.
tail -f archivo.log
Nos permite ver en tiempo real el cambio en los
archivos logs
Para no dejar afuera a nadie buscamos algo similar
para windows:
tailforwin es una herramienta en la cual se cargan los
archivos a seguir y de la misma manera que el anterior
permite el análisis de los logs en tiempo real.
http://tailforwin32.sourceforge.net/
Posterior a la instalación del XAMPP no hace falta muchas
configuraciones sobre las herramientas.
XAMPP establece para la DB un usuario y una contraseña por default, y
las bibliotecas PHP se instalan, se configuran en el directorio
xamppphpphp.ini para ser habilitadas.
Puesta en desarrollo y configuración de Symfony2
Antes de empezar debemos crear dos directorios dentro del esquema de symfony2 el cache y el
directorio logs, los mismos se deberán crear en el interior de app/. Y mover el directorio con el
framework al htdocs del XAMPP.
Existen dos maneras de poner en marcha symfony2, mediante composer o descargando el archivo
comprimido.
Mediante composer:
% curl -s https://getcomposer.
org/installer | php
Guía windows(instalación de composer):
http://getcomposer.org/doc/00-intro.md#installation-
windows
Una vez instalado:
php.exe composer.phar create-project symfony/framework-standard-edition
/ruta/a/raizweb/Symfony dev-master
Descarga del archivo:
Si van a la página:
http://symfony.com/download
También tienen para elegir entre tgz o zip, que es solo el modo de compresión, y además con o sin
vendors, se recomienda para los desarrolladores que posean el cliente GIT sin vendors por la
flexibilidad de instalar sofrware de terceros.
Si optamos por el pack que viene sin vendors, vamos a tener que instalar composer de igual manera
que se mencionó anteriormente. Solo que en vez de instalar symfony2 correremos el siguiente
comando
php.exe composer.phar install
En algunos casos la conexión es muy lenta el proceso de actualización o instalación
por lo que debe acompañarse del seteo de variable
COMPOSER_PROCESS_TIMEOUT=300 php.exe composer.phar update
Una vez concluido podemos empezar el tour probando lo mencionado anteriormente:
podemos ir al browser y tipear:
http://localhost/app_dev.php/
Últimos tips, para administrar las bases de datos
vía WEB podemos usar:
http://www.phpmyadmin.net/home_page/index.php (MySQL)
http://phppgadmin.sourceforge.net/doku.php (PostgreSQL)
https://github.com/jwage/php-mongodb-admin (MongoDB)

Contenu connexe

Tendances

Zend framework
Zend frameworkZend framework
Zend frameworkjasiel_14
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completoAndrés Amaya
 
Práctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte IPráctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte IJorge Iván Meza Martínez
 
Curso desarrollo web_con_php_y_my_sql
Curso desarrollo web_con_php_y_my_sqlCurso desarrollo web_con_php_y_my_sql
Curso desarrollo web_con_php_y_my_sqlwilliam kozisck
 
03 Php. Instalacion De Php
03 Php. Instalacion De Php03 Php. Instalacion De Php
03 Php. Instalacion De PhpJosé M. Padilla
 
Aplicaciones web con php y my sql
Aplicaciones web con php y my sqlAplicaciones web con php y my sql
Aplicaciones web con php y my sqlyanetzis
 
Servidor ubuntu(linux)
Servidor ubuntu(linux)Servidor ubuntu(linux)
Servidor ubuntu(linux)simeon
 

Tendances (12)

Zend framework
Zend frameworkZend framework
Zend framework
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completo
 
Práctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte IPráctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte I
 
Tema1
Tema1Tema1
Tema1
 
Curso desarrollo web_con_php_y_my_sql
Curso desarrollo web_con_php_y_my_sqlCurso desarrollo web_con_php_y_my_sql
Curso desarrollo web_con_php_y_my_sql
 
03 Php. Instalacion De Php
03 Php. Instalacion De Php03 Php. Instalacion De Php
03 Php. Instalacion De Php
 
Php curso02
Php   curso02Php   curso02
Php curso02
 
Instalacion roms
Instalacion romsInstalacion roms
Instalacion roms
 
Aplicaciones web con php y my sql
Aplicaciones web con php y my sqlAplicaciones web con php y my sql
Aplicaciones web con php y my sql
 
Php apéndice
Php   apéndicePhp   apéndice
Php apéndice
 
Tema1
Tema1Tema1
Tema1
 
Servidor ubuntu(linux)
Servidor ubuntu(linux)Servidor ubuntu(linux)
Servidor ubuntu(linux)
 

Similaire à Clase 3 instalación y primeros pasos

Symfony2 Formacion y primeros pasos
Symfony2  Formacion y primeros pasosSymfony2  Formacion y primeros pasos
Symfony2 Formacion y primeros pasosSoni BM
 
Instalación KOHA: desarrollo, requerimientos y configuración
Instalación KOHA: desarrollo, requerimientos y configuraciónInstalación KOHA: desarrollo, requerimientos y configuración
Instalación KOHA: desarrollo, requerimientos y configuraciónSocialBiblio
 
633f9e tutorial de php y my sql completo
633f9e tutorial de php y my sql completo633f9e tutorial de php y my sql completo
633f9e tutorial de php y my sql completoMETROPOLITANO
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completoErnesto Gamboa
 
633f9e tutorial de php y my sql completo
633f9e tutorial de php y my sql completo633f9e tutorial de php y my sql completo
633f9e tutorial de php y my sql completoUbeimar Navarro Herrera
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completoIgnacio Reyes
 
633f9e tutorial de php y my sql completo (1)
633f9e tutorial de php y my sql completo (1)633f9e tutorial de php y my sql completo (1)
633f9e tutorial de php y my sql completo (1)Eduardo Monroy Husillos
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completoAlberto Martinez
 
Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Edgar Dueñas
 
Desarrollo de sitios web con PHP y MySQL.ppt
Desarrollo de sitios web con PHP y MySQL.pptDesarrollo de sitios web con PHP y MySQL.ppt
Desarrollo de sitios web con PHP y MySQL.pptJorgeAntonio32064
 
PHP Tema 1 - Introducción
PHP Tema 1 - IntroducciónPHP Tema 1 - Introducción
PHP Tema 1 - IntroducciónSpacetoshare
 
Manual php y_mysql
Manual php y_mysqlManual php y_mysql
Manual php y_mysqljohan reyes
 
92 Php. Instalar Php4 Como Cgi
92 Php. Instalar Php4 Como Cgi92 Php. Instalar Php4 Como Cgi
92 Php. Instalar Php4 Como CgiJosé M. Padilla
 

Similaire à Clase 3 instalación y primeros pasos (20)

CRUD básico con Symfony
CRUD básico con SymfonyCRUD básico con Symfony
CRUD básico con Symfony
 
Symfony2 Formacion y primeros pasos
Symfony2  Formacion y primeros pasosSymfony2  Formacion y primeros pasos
Symfony2 Formacion y primeros pasos
 
Php andmysql
Php andmysqlPhp andmysql
Php andmysql
 
nn
nnnn
nn
 
Instalación KOHA: desarrollo, requerimientos y configuración
Instalación KOHA: desarrollo, requerimientos y configuraciónInstalación KOHA: desarrollo, requerimientos y configuración
Instalación KOHA: desarrollo, requerimientos y configuración
 
633f9e tutorial de php y my sql completo
633f9e tutorial de php y my sql completo633f9e tutorial de php y my sql completo
633f9e tutorial de php y my sql completo
 
Tutorial mysqlphp
Tutorial mysqlphpTutorial mysqlphp
Tutorial mysqlphp
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completo
 
633f9e tutorial de php y my sql completo
633f9e tutorial de php y my sql completo633f9e tutorial de php y my sql completo
633f9e tutorial de php y my sql completo
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completo
 
633f9e tutorial de php y my sql completo (1)
633f9e tutorial de php y my sql completo (1)633f9e tutorial de php y my sql completo (1)
633f9e tutorial de php y my sql completo (1)
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completo
 
Php andmysql (1)
Php andmysql (1)Php andmysql (1)
Php andmysql (1)
 
Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2
 
Desarrollo de sitios web con PHP y MySQL.ppt
Desarrollo de sitios web con PHP y MySQL.pptDesarrollo de sitios web con PHP y MySQL.ppt
Desarrollo de sitios web con PHP y MySQL.ppt
 
PHP Tema 1 - Introducción
PHP Tema 1 - IntroducciónPHP Tema 1 - Introducción
PHP Tema 1 - Introducción
 
Manual php y_mysql
Manual php y_mysqlManual php y_mysql
Manual php y_mysql
 
Composer & SemVer
Composer & SemVerComposer & SemVer
Composer & SemVer
 
92 Php. Instalar Php4 Como Cgi
92 Php. Instalar Php4 Como Cgi92 Php. Instalar Php4 Como Cgi
92 Php. Instalar Php4 Como Cgi
 
Practica09
Practica09Practica09
Practica09
 

Plus de hydras_cs

Clase 15 FOS
Clase 15 FOSClase 15 FOS
Clase 15 FOShydras_cs
 
Clase 14 bundles útiles
Clase 14 bundles útilesClase 14 bundles útiles
Clase 14 bundles útileshydras_cs
 
Clase 13 seguridad
Clase 13   seguridad Clase 13   seguridad
Clase 13 seguridad hydras_cs
 
Clase 11 continuamos con formularios
Clase 11   continuamos con formulariosClase 11   continuamos con formularios
Clase 11 continuamos con formularioshydras_cs
 
Clase 10 validacion
Clase 10   validacionClase 10   validacion
Clase 10 validacionhydras_cs
 
Clase 10 formularios
Clase 10   formulariosClase 10   formularios
Clase 10 formularioshydras_cs
 
Clase 7 el modelo
Clase 7  el modeloClase 7  el modelo
Clase 7 el modelohydras_cs
 
Clase 14 doctrine - subir archivos
Clase 14   doctrine - subir archivosClase 14   doctrine - subir archivos
Clase 14 doctrine - subir archivoshydras_cs
 
Clase 6 twig
Clase 6 twigClase 6 twig
Clase 6 twighydras_cs
 
Clase 5 controller
Clase 5 controllerClase 5 controller
Clase 5 controllerhydras_cs
 
Clase 4 routing
Clase 4 routingClase 4 routing
Clase 4 routinghydras_cs
 
Sensio labsdesktop
Sensio labsdesktopSensio labsdesktop
Sensio labsdesktophydras_cs
 
Clase 2 conceptos fundamentales
Clase 2   conceptos fundamentalesClase 2   conceptos fundamentales
Clase 2 conceptos fundamentaleshydras_cs
 
Clase 1 introducción a symfony 2
Clase 1   introducción a symfony 2Clase 1   introducción a symfony 2
Clase 1 introducción a symfony 2hydras_cs
 

Plus de hydras_cs (15)

Clase 15 FOS
Clase 15 FOSClase 15 FOS
Clase 15 FOS
 
Clase 15
Clase 15Clase 15
Clase 15
 
Clase 14 bundles útiles
Clase 14 bundles útilesClase 14 bundles útiles
Clase 14 bundles útiles
 
Clase 13 seguridad
Clase 13   seguridad Clase 13   seguridad
Clase 13 seguridad
 
Clase 11 continuamos con formularios
Clase 11   continuamos con formulariosClase 11   continuamos con formularios
Clase 11 continuamos con formularios
 
Clase 10 validacion
Clase 10   validacionClase 10   validacion
Clase 10 validacion
 
Clase 10 formularios
Clase 10   formulariosClase 10   formularios
Clase 10 formularios
 
Clase 7 el modelo
Clase 7  el modeloClase 7  el modelo
Clase 7 el modelo
 
Clase 14 doctrine - subir archivos
Clase 14   doctrine - subir archivosClase 14   doctrine - subir archivos
Clase 14 doctrine - subir archivos
 
Clase 6 twig
Clase 6 twigClase 6 twig
Clase 6 twig
 
Clase 5 controller
Clase 5 controllerClase 5 controller
Clase 5 controller
 
Clase 4 routing
Clase 4 routingClase 4 routing
Clase 4 routing
 
Sensio labsdesktop
Sensio labsdesktopSensio labsdesktop
Sensio labsdesktop
 
Clase 2 conceptos fundamentales
Clase 2   conceptos fundamentalesClase 2   conceptos fundamentales
Clase 2 conceptos fundamentales
 
Clase 1 introducción a symfony 2
Clase 1   introducción a symfony 2Clase 1   introducción a symfony 2
Clase 1 introducción a symfony 2
 

Clase 3 instalación y primeros pasos

  • 1. Instalación y Primeros Pasos Realizada por: Diego Barros |@imnzombie Diego Ramirez |@thedarsideofit Para: Hydras C&S |@hydras_cs Basada en Libro Symfony 2 en español Nacho Pacheco
  • 2. Creando páginas en Symfony2 Dos pasos ● Crear una ruta. ● Crear un controlador
  • 3. Creando páginas en Symfony2 La página «¡Hola Symfony!» En realidad la palabra Symfony podrá ser reemplazada por cualquier término http://localhost/app_dev.php/hello/Symfony
  • 4. Creando páginas en Symfony2 Creando el bundle Este comando realiza dos cosas: ● Crea el directorio en src/Acme/HelloBundle ● Registra el bundle en el kernel de la aplicación AppKernel $ php app/console generate:bundle -- namespace=Acme/HelloBundle --format=yml
  • 5. Creando páginas en Symfony2 Creando las rutas usando YML # app/config/routing.yml acme_hello: resource: @AcmeHelloBundle/Resources/config/routing. yml" prefix: / # src/Acme/HelloBundle/Resources/config/routing.yml hello: pattern: /hello/{name} defaults: { _controller: AcmeHelloBundle:Hello:index }
  • 6. Creando páginas en Symfony2 Creando las acciones del controlador // src/Acme/HelloBundle/Controller/HelloController.php namespace AcmeHelloBundleController; use SymfonyComponentHttpFoundationResponse; class HelloController { public function indexAction($name) { return new Response('<html><body>Hello' $name.'!</body></html>'); } }
  • 7. Creando páginas en Symfony2 Creando las acciones del controlador // src/Acme/HelloBundle/Controller/HelloController.php namespace AcmeHelloBundleController; use SymfonyBundleFrameworkBundleControllerController; class HelloController extends Controller { public function indexAction($name) { return $this->render( 'AcmeHelloBundle:Hello:index.html.twig', array('name' => $name) ); } }
  • 8. Creando páginas en Symfony2 Convenciones de nombres Creando la plantilla con Twig BundleName:ControllerName:TemplateName /path/to/BundleName/Resources/views/ControllerName/Te mplateName {# src/Acme/HelloBundle/Resources/views/Hello/index.html.twig #} {% extends '::base.html.twig' %} {% block body %} Hello {{ name }}! {% endblock %}
  • 9. Creando páginas en Symfony2 Estructura de la plantilla base {# app/Resources/views/base.html.twig #} <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>{% block title %}Welcome!{% endblock %}</title> {% block stylesheets %}{% endblock %} <link rel="shortcut icon" href="{{ asset('favicon.ico') }}" /> </head> <body> {% block body %}{% endblock %} {% block javascripts %}{% endblock %} </body> </html>
  • 10. Estructura de Directorios ● app/: Este directorio contiene la configuración de la aplicación; ● src/: Todo el código PHP del proyecto se almacena en este directorio; ● vendor/: Por convención aquí se coloca cualquier biblioteca de terceros; ● web/: Este es el directorio web raíz y contiene todos los archivos de acceso público; ● El controlador frontal: // web/app.php require_once __DIR__.'/../app/bootstrap.php.cache'; require_once __DIR__.'/../app/AppKernel.php'; use SymfonyComponentHttpFoundationRequest; $kernel = new AppKernel('prod', false); $kernel->loadClassCache(); $kernel->handle(Request::createFromGlobals())->send();
  • 11. Estructura de Directorios Estructura de un bundle: ● Controller/ Contiene los controladores del paquete (por ejemplo, HelloController.php); ● DependencyInjection/ mantiene ciertas extensiones para las clases de inyección de dependencias, qué configuración puede importar el servicio, registra uno o más pases del compilador (este directorio no es necesario); ● Resources/config/ Contiene la configuración, incluyendo la configuración de enrutado (por ejemplo, routing.yml); ● Resources/views/ Contiene las plantillas organizadas por nombre de controlador (por ejemplo, Hello/index.html.twig); ● Resources/public/ Contiene recursos web (imágenes, hojas de estilo, etc.) y es copiado o enlazado simbólicamente al directorio web/ del proyecto vía la orden de consola assets:install; ● Tests/ Tiene todas las pruebas para el paquete.
  • 12. Entornos Por defecto Symfony propone tres entornos: ● prod: sólo se registran los errores (log) y utiliza la cache. ● dev: no se utiliza la cache, se muestran las excepciones detalladas se muestra la symfony developer toolbar ● test: se utiliza cuando se ejecutan pruebas automáticas y no se puede acceder directamente a través del navegador
  • 14. ● Primero debemos verificar que nuestros servicios Apache y de base de datos, ya sea PostgreSQL, MySQL, Mongo, etc.. estén en funcionamiento. ● Posterior configurar los correspondientes servicios. ● Realizar la puesta en desarrollo y configurar el entorno. Pasos a seguir:
  • 15. Para el mayor enfoque sobre el framework en este curso utilizaremos el paquete XAMPP(Apache, MySQL, PHP, Perl)
  • 16. Una vez realizada la instalación de XAMPP podemos acceder al home a través del browser mediante la url: http://localhost
  • 17. Nos encontraremos con la información pertinente en lo respecta versión funcionamiento del XAMPP, phpMyAdmin para administrar la Base de Datos MySQL
  • 18. Además cuenta con un panel administrador para establecer el estado de los servicios Ver los logs, configurar los archivos principales.
  • 19. En las distribuciones de GNU Linux contamos con un comando para visualizar los logs muy útil. tail -f archivo.log Nos permite ver en tiempo real el cambio en los archivos logs
  • 20. Para no dejar afuera a nadie buscamos algo similar para windows: tailforwin es una herramienta en la cual se cargan los archivos a seguir y de la misma manera que el anterior permite el análisis de los logs en tiempo real. http://tailforwin32.sourceforge.net/
  • 21. Posterior a la instalación del XAMPP no hace falta muchas configuraciones sobre las herramientas. XAMPP establece para la DB un usuario y una contraseña por default, y las bibliotecas PHP se instalan, se configuran en el directorio xamppphpphp.ini para ser habilitadas.
  • 22. Puesta en desarrollo y configuración de Symfony2 Antes de empezar debemos crear dos directorios dentro del esquema de symfony2 el cache y el directorio logs, los mismos se deberán crear en el interior de app/. Y mover el directorio con el framework al htdocs del XAMPP. Existen dos maneras de poner en marcha symfony2, mediante composer o descargando el archivo comprimido. Mediante composer: % curl -s https://getcomposer. org/installer | php Guía windows(instalación de composer): http://getcomposer.org/doc/00-intro.md#installation- windows Una vez instalado: php.exe composer.phar create-project symfony/framework-standard-edition /ruta/a/raizweb/Symfony dev-master
  • 23. Descarga del archivo: Si van a la página: http://symfony.com/download También tienen para elegir entre tgz o zip, que es solo el modo de compresión, y además con o sin vendors, se recomienda para los desarrolladores que posean el cliente GIT sin vendors por la flexibilidad de instalar sofrware de terceros. Si optamos por el pack que viene sin vendors, vamos a tener que instalar composer de igual manera que se mencionó anteriormente. Solo que en vez de instalar symfony2 correremos el siguiente comando php.exe composer.phar install En algunos casos la conexión es muy lenta el proceso de actualización o instalación por lo que debe acompañarse del seteo de variable COMPOSER_PROCESS_TIMEOUT=300 php.exe composer.phar update
  • 24. Una vez concluido podemos empezar el tour probando lo mencionado anteriormente: podemos ir al browser y tipear: http://localhost/app_dev.php/
  • 25. Últimos tips, para administrar las bases de datos vía WEB podemos usar: http://www.phpmyadmin.net/home_page/index.php (MySQL) http://phppgadmin.sourceforge.net/doku.php (PostgreSQL) https://github.com/jwage/php-mongodb-admin (MongoDB)