Cuando necesitamos desarrollar proyectos Web en PHP de un tamaño ya considerable, tenemos que plantearnos seriamente el aplicar arquitecturas que faciliten el mantenimiento y modificación futuros del proyecto que puedan surgir ante el cambio de requisitos. Un patrón arquitectónico software adecuado para este tipo de casos podría ser MVC (Modelo, Vista y Controlador).
El MVC es un patrón de arquitectura del software que diferencia en distintos compomentes los datos de una aplicación, la interfaz de usuario, y la lógica de negocio.
En el caso de PHP disponemos de distintos Frameworks que facilitan el desarrollo de proyectos con el patrón MVC, en este artículo concreto, explicaremos como instalar la herramienta NetBeans IDE 7 junto con el Framework Symfony2, siendo el Framework de Symfony2 quien nos facilitará la tarea.
Tenemos que tener en cuenta que en NetBeans IDE 7, por defecto, ya viene instalado el plugin Symfony, pero no Symfony2.
Los pasos que debemos seguir para instalar NetBeans IDE 7 con Symfony2 en Windows 7 son:
Nota: Consideramos que disponemos de un servidor web (IIS por ejemplo) y PHP 5 instalado de antemano. También podríamos tener ya instalado un servidor MysSql.
2. Abrimos NetBeans IDE 7 y vamos a "Tools->plugins" pulsamos en la pestaña de "Available Plugins" y buscamos en el campo "Search" la cadena "symfony2".
3. Entre los resultados de búsqueda seleccionamos "PHP Symfony2 Framework" y lo instalamos pulsando "Install".
4. Entramos en la web de symfony http://symfony.com/download y descargamos el archivo con extensión ".zip" en la que no ponga "without vendors".
5. Abrimos NetBeans IDE 7 y vamos a "Tools->options", le pulsamos a la opción de "PHP" y después a la pestaña "Symfony2". En el botón "Browse.." seleccionamos el archivo ".zip" que descarguemos de la página oficial de Symfony. Este paso sirve para indicar a NetBeans IDE 7 la ubicación del Framwork Symfony 2.
6. Creamos un proyecto de prueba llamado "proyectoSymfony2". Desde "File->New Project".
Elegimos proyecto aplicación PHP.
Especificamos la ruta donde se almacenará nuestro proyecto, la cual tendrá que ser accesible por nuestro servidor web para poder probarse el proyecto durante el desarollo.
Indicamos el Index del proyecto o archivo de entrada, concretamente tendríamos que indicar el archivo contenido en "./web/app_dev.php"
Seleccionamos Symfony2 para nuestro proyecto.
7. Ejecutamos el proyecto. En caso que nos salga un excepción referida al Timezone tal como se muestra a continuación:
Tendremos que añadir la linea de
código "date_default_timezone_set('Europe/Madrid');"
en el archivo de nuestro proyecto
"./app/AppKernel.php" tal como aparece en la imagen.
8. Ahora ya podemos ejecutar nuestro proyecto de prueba "proyectoSymfony2" y debería funcionar correctamente apareciendo algo similar a:
muy buen tutorial, seras debidamente recompensado cuando sea el amo indiscutible del universo.
ResponderEliminarsaludos!
muchas gracias, aunque espero no tener que recibir dicha recompensa. saludos :).
EliminarMuchas gracias, muy bueno, me ha sido de mucha utilidad.
ResponderEliminarEstupendo ya me estaba dando de bruces sobre cómo configurar el plugin en netbeans.
ResponderEliminarTengan en cuenta instalar también el plugin para TWIG !
Creo que es la primera vez en mi vida que sigo un tutorial y me funciona todo a la primera, además de tiempo de no tocar temas de programación.
ResponderEliminarSi estuvieráis cerca os invitaba a todos a unas birras, como va a ser complicado me las tomo a vuestra salud.
Hola guille, me alegro que te haya sido de utilidad. Un saludo.
ResponderEliminarHola.....muy bueno tu tutorial...me fue muy util....thanx :)
ResponderEliminarDe nada, encantado de haberle podido ayudar. Si le surge cualquier cuestión no dude en consultar. Saludos.
ResponderEliminarNo me aparece el plugin de PHP Symfony2 Frameworks que hago? tengo la ultima versión de Netbeans.
ResponderEliminarBuenas.
ResponderEliminarVe a Tools-> Plugins y la pestaña "Available Plugins". Una vez allí pulsa en el botón de "Reload Catalog". Una vez recargado el catálogo mira a ver si te aparece. Un saludo.
Gracias por la info ya esta funcionando
EliminarNice, me funcionó perfecto, tuve un error al poner la ruta del proyecto, pero antes de caer en desesperación revisé el directorio y me dí cuenta que el "app_dev.php" queda dentro de la carpeta "web" en el proyecto :D
ResponderEliminarMuchas gracias!
Buenas. A mi me sucedió algo similar en su momento. Me alegro que lo haya resuelto. Un saludo :-)
EliminarMuy buen tutorial, me sirvio, aunque yo puese el time zone de madrid luego busque en
ResponderEliminarGoogle para America Ecuador aqui dejo la ruta
http://www.php.net/manual/es/timezones.php
El problema del timezone es engorroso estarlo cambiando cada vez que creas un nuveo proyecto, revisando la pagina del symfony2 encontre que este cambio hay que hacerlo en el archivo de configuracion de php
ResponderEliminarabrir PHP.INIT y actualizar esta linea, quitar los puntos y coma
date.timezone = "America/Guayaquil" de tal forma que evitaremos este problema a futuro
Buenas Manuel, efectivamente la solución que propones es la idónea, tener configurado PHP con la zona horaria en la que nos encontramos. Uno de los motivos por los que no expliqué dicha solución es porque hay ocasiones en los que no tenemos acceso a modificar la configuración PHP del servidor, y además que de esta forma independendizamos nuestro proyecto de la configuración que tengamos en el servidor. De todos modos como ya he dicho, la solución que propones es la idónea. Muchas gracias :-).
ResponderEliminarDe nada, yo tambien aqui empezando con Symfony2 soy novato en esto!
Eliminarmuy bien gracias por el aporte
ResponderEliminarbuen aporte, añadir que si trabajas en ubuntu no debes olvidar dar permisos
ResponderEliminarchmod -R 777 app/cache
chmod -R 777 app/logs
saludos
Para alguien que tenga problemas tratando de instalar el symfony 1.4 u otra versión menor que la del 2, primero hagan unzip del archivo rar, ya que de otra forma les dará erro como me pasaba, suerte y gracias
ResponderEliminarHe instalado la versión más actual de Netbeans (7.3.1) y Symfony2.3.3, pero me aparece lo siguiente en donde salen los input:
ResponderEliminarWarning: require(C:\xampp\htdocs\prototipo\app/../vendor/autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\prototipo\app\autoload.php on line 9
Fatal error: require(): Failed opening required 'C:\xampp\htdocs\prototipo\app/../vendor/autoload.php' (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\prototipo\app\autoload.php on line 9
Estoy usando XAMPP 1.8.2 (la más reciente) y necesito ayuda.
Disculpa pero me sale este error como lo soluciono "php interpreter must be selected"
ResponderEliminarHola diego, debes ir a Tools->Options->Php en la pestaña General, en el campo de PHP 5 Interpreter, debes dar clic en Browse.. y seleccionar el archivo php.exe "C:/xampp/php/php.exe" y clic en OK. Espero que te sirva!
ResponderEliminarMuchas gracias. Me ha sido muy útil este tutorial. Si puedes ayudarnos con una explicación sobre cómo generar código automático (ingeniería inversa) con este framework a partir de la base de datos implementada en MySql, nos darías una gran ayuda. Nuevamente, muchas gracias.
ResponderEliminarEstimad@s Ya no existe la version .zip, de donde la descargas para Netbeans?.
ResponderEliminarGracias