You are on page 1of 20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

AprendiendoPHP5::AprenderPHP::AprenderUML
APRENDIENDOPHP5,enesteBlogencontrarsinformacinrelacionadaconPHP5,OPP,Patronesde diseo,UML,ZendFramework,BasesdeDatos,CSS,JQueryyherramientasdetrabajo.

LUNES26DEMARZODE2012

SEGUIDORES Participarenestesitio
Google Friend Connect

ActionHelpers
ParaZFlosActionHelperssonclasesquepermitirnserejecutadasporcualquier ControladormejorandosustancialmentelafuncionalidaddelosActionControllerso cambiandosucomportamientobajodemanda,detalformaqueindependizaciertastareas, permitereusaryhacerelcdigomuchomslimpio.Tienelaventajaademsdeser utilizadosentiempodeejecucin,sisenecesitanseutilizanperonosecarganpor defecto.ZendFrameworktienealgunosActionHelpersdiseadosquepuedenser ejecutadosdirectamentedentrodelosAction,enlalistaseencuentran:Url, ViewRenderer,Redirector,FlashMessenger,ContextSwitch,Cache,AjaxContext, AutoCompleteDojo,AutoCompleteScriptaculous,JsonyActionStack,ZFofreceadems laposibilidaddecrearnuestrospropiosActionHelpers.

BITACORA

2012(8) marzo(4) ActionHelpers Mtodos_forward_redirect AccediendoalaAplicacin ...IndexController

CrearnuestrosActionHelpers

Los Action Helpers son clases que se extienden de Zend_Controller_Action_Helper_Abstract y siguiendo la convencin de nombres, la ubicacin fsica de los action que vienen por defecto es LIBRERA/ZEND/CONTROLLER/ACTION/HELPER, ahora bien, para adicionar cdigo personalizado o propio se sugiere hacerlo bajo la carpeta LIBRARY, nuestros Action HelperslospodemosguardarenLIBRARY/COD/HELPERS COD=CarpetadeCdigoPropio(Elnombreesindiferenteporejemplo:MYoLIB)

InterfacesFluidasoFluentInterfaces enero(4) 2010(2) 2009(9)

ENTRADAS POPULARES

VIDEOSZEND FRAMEWORK

CmollamarunActionHelper

PHPOrientadoa objetosII Continuando aunquealgo demoradopor compromisos laboralesDela largalistade trminosquese empleano aparecencuando sehablade OPP...

La

encargada de administrar los Action Helpers es Zend_Controller_Action_HelperBroker , mediante sus mtodos getHelper, addHelper, addPath, addPrefix, resetHelpers, podr obtener un helper por nombre, adicionar helper, adicionar la ruta de ubicacin, adicionar helpers por prefijo y hacer un reset al stack respectivamente. Esta clase permite cargar por demanda cualquier Action Helper, esto debido a que se comporta como una fbrica de helperregistradosdeformaesttica.

clase

que

esta

ZendFramework0

aprendiendophp5.blogspot.com

1/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

EstaclaseesrequeridaporZend_Controller_Action yunadesuspropiedadeses:

protected$_helper=null

Lacualguardaunainstanciadesuclase

ZendFramework0 Aspectos generales. Framework, Compendiode libreras,mdulos obibliotecasde software probadas,seguras ydeuso recurrenteenla pro... PHPOrientadoa objetosI Conlanueva versindelmotor ZendEngine2.0, PHP5.3.1trae consigomuchas ventajasrespecto asuantecesor PHP4respectoal manejodel...

conlatecnologade

publicfunction __construct(Zend_Controller_Request_Abstract $request,Zend_Controller_Response_Abstract $response,array$invokeArgs=array()) { $this>setRequest($request) >setResponse($response) >_setInvokeArgs($invokeArgs) $this>_helper=newZend_Controller_Action_HelperBroker($this) $this>init() }

PERFIL

ParallamaraunActionHelperdentrodeunControllerdebemosutilizarelhelperbroker as: $this>_helper>nombreActionHelper()

AprendiendoPHP 5 Ing.Informtico, Tec.Ingenieriade Sistemas, especialistaen computacin. Aprendiz constantede PHP,OPP,Zend Framework, JQueryyMySQL. Diplomados : Redesy Comunicaciones, Domotica,Flash, SQL, Dreamweaver. Proyectosen ProcesoEditorde Contenidosen Zendframework Vertodomiperfil

Cmoregistrarlosyejecutarlos

UtilizandoaddPrefix()laclaseprefijosirveparadeterminarlarutadondeestnubicados losActionHelpers,esteprefijodeberegirseporlaconvencionesdenombredeclases utilizadasporZF.

Paraserejecutadosdentrodelos"Action"deloscontroladoressedebeprimeroindicar dondeseencuentranfsicamenteparaestoinicializaremosenelBootstrapunmetodo_init oadicionamosunanuevalineaenapplication.ini

classCod_Helpers_AyudasextendsZend_Controller_Action_Helper_Abstract{ publicfunctiondirect() { }

aprendiendophp5.blogspot.com

2/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

classBootstrapextendsZend_Application_Bootstrap_Bootstrap { protectedfunction_initHelper() { Zend_Controller_Action_HelperBroker::addPrefix('Cod_Helpers') } }

Unaalternativaparaelbootstrapesinicializarenelapplication.ini [production]
r e s o u r c e s . f r o n t C o n t r o l l e r . a c t i o n H e l p e r P a t h s . H E L P E R _ P r e f i x = " M y / H e l p e r / P a t h "

Podemos tambin llamar a otros Action Helper ubicados fsicamente en otra ruta, para hacerestosutilizamos: Zend_Controller_Action_HelperBroker::addPath( APPLICATION_PATH.'/controllers/helpers')

PublicadoporAprendiendoPHP5en15:18

S BADO17DEMARZODE2012

Mtodos_forward_redirect
Zend_Controller_Action tiene dos mtodos que nos permiten movernos fcilmente entre accionesdeuncontroladoraotro,elmtodo_forward()y_redirect(),ladiferenciaentre ellos radica bsicamente en que _forward () pasa de una accin a otra sin hacer una nuevapeticinHTTP,permaneciendoenlamismaURL

indexController.php

classIndexControllerextendsZend_Controller_Action { publicfunctioninit() { /*Initializeactioncontrollerhere*/ } publicfunctionindexAction() { $this>_forward('listar') }

aprendiendophp5.blogspot.com

3/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

publicfunctionlistarAction() { } }

listar.phtml

<div> <h1>Listar</h1> </div>

Realicemosalgunoscambios

Controller publicfunctionindexAction() { $this>_forward('listar','index',null,array('nombre'=>'Carlos')) //_forward($action,$controller=null,$module=null,array$params=null) //Losparametrosconvalornullsonopcionales } publicfunctionlistarAction() { $this>view>nombre=$this>_getParam('nombre','sinnombre') //_getParamtienedosparametros,elprimeroeselnombrela //lavariablearecuperaryelsegundo(opcional)eselvalorpordefectosi //lavariablenoesta. }

Vista

<div> <h1>Listar<?phpecho$this>nombre?></h1> </div>

aprendiendophp5.blogspot.com

4/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

Deestaformapodemospasarvaloresdeunaaccinaotra.Ahoranuestroejemploser utilizando _redirect() este mtodo utiliza dos parametros $this >_redirect($url,$opciones).

<?php classIndexControllerextendsZend_Controller_Action { publicfunctioninit() { /*Initializeactioncontrollerhere*/ } publicfunctionindexAction() { $this>_redirect('contacto/index') //_redirect($url) } AlverificaresteejemplosepuedeapreciarquelaURLenelnavegadorhacambiado.


PublicadoporAprendiendoPHP5en14:38

VIERNES16DEMARZODE2012

AccediendoalaAplicacin...IndexController
AlterminarlaconfiguracinbsicadetodoelentornodeZendFrameworkdesdenuestro navegadorpodemosejecutarhttp://contabilidad(segnnuestroejemplo)yvisualizaremos losiguiente:

LassiguientesURL`sdarandelmismoresultado http://contabilidad/index http://contabilidad/index/index

aprendiendophp5.blogspot.com

5/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

http://contabilidad/default/index/index

Zend Framework puede trabajar bajo modulos y el nombre del modulo por defecto es "default".Todaslaspeticionesalnavegadorserealizaranbajoelsiguienteesquema: http://nombreProyecto/controlador/accion http://nombreProyecto/modulo/controlador/accion http://nombreProyecto/modulo/controlador/accion/variable1/valor1 NuestraURLhttp://contabilidad/indexindicaquenuestrocontroladorpordefectoes IndexControllerynuestraaccinpordefectoesindexAction,ademasquenuestravistapor defectoesindex.phtml,enlasiguientegrficaquedaexplicadoelproceso.

Lagrficaesunarepresentacinbsicadecomoseejecutaelproceso,faltandoelFront Controllercomoelcomponentequepermiteenrutartodaslaspeticiones.

ElIndexControllerbsicoes: classIndexControllerextendsZend_Controller_Action {

publicfunctioninit() { /*Initializeactioncontrollerhere*/ //ElcdigoenestemtodoseejecutarantesqueelPredispatch }

publicfunctionindexAction()

aprendiendophp5.blogspot.com

6/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

{ //actionbody }

} Elmtodoinit()eselltimomtododelconstructordelaclasepadre Zend_Controller_Actionypermiteinicializarnuestrocontrollercadaqueesllamadoporel FrontControllerenelprocesodedispatch,laconfiguracindadaafectartodoel Controlador.

Dentrodelcontroladorestnlasaccionesomtodosquerealizaranfuncionesespecificas, cadanombredeaccintendrcomosufijo"Action"porejemploindexAction(), listaAction(),etc.Enelcontroladorpodemostenermtodosquenotenganestesufijoyser llamadosdeformainterna,nosonpublicamenteaccesibles.

CrearnuevosControlllersdesdeNetBeans

aprendiendophp5.blogspot.com

7/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

MedianteZend_ToolNetBeansautomaticamentecrearelControllerylosmetodospor defecto,aligualquelasvistasrespectivasenview/scripts/nuevocontrolador. LosControllerssoportanactionhelperyplugin,lospluginsseutilizanparaejecutaralgo especificoencadapeticinalaaplicacin,comoporejemploverificarsielusuarioesta registrado,queperfiltieneelusuario,etc.LosActionHelperssontareasmuchoms especificasypermitencompartirinformacinentrecontroladores

PublicadoporAprendiendoPHP5en09:20

JUEVES15DEMARZODE2012

InterfacesFluidasoFluentInterfaces
InterfacesfluiadasenZendFramework

ZendFrameworkutilizaunestiloespecialparalaejecucindevariosmtodosdeforma encadenadaestorealmenteseconocecomo"FluentInterfaces"ointerfacesfluidas,su nombreestaasociadoaMartinFowleryfundamentalmentesepretendehacermslegible elcdigo.

Cadamtodosetterdebetenerreturn$thisdeestaformadevolverunareferenciadel objetodelcualfuellamado.

Ejemplo
http://www.techchorus.net/makingcodemorereadableusingfluentinterface

c l a s s C u s t o m e r { p r o t e c t e d $ _ n a m e p r o t e c t e d $ _ s t r e e t p r o t e c t e d $ _ c i t y p r o t e c t e d $ _ c o u n t r y p u b l i c f u n c t i o n s e t N a m e ( $ n a m e ) { $ t h i s > _ n a m e = $ n a m e r e t u r n $ t h i s

aprendiendophp5.blogspot.com

8/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C
p u b l i c f u n c t i o n s e t S t r e e t A d d r e s s ( $ s t r e e t ) { $ t h i s > _ s t r e e t = $ s t r e e t r e t u r n $ t h i s p u b l i c f u n c t i o n s e t C i t y ( $ c i t y ) { $ t h i s > _ c i t y = $ c i t y r e t u r n $ t h i s p u b l i c f u n c t i o n s e t C o u n t r y ( $ c o u n t r y ) { $ t h i s > _ c o u n t r y = $ c o u n t r y r e t u r n $ t h i s p u b l i c f u n c t i o n s a v e ( ) { / / S a v e t h e i n f o r m a t i o n t o a d a t a b a s e e c h o " C u s t o m e r i n f o r m a t i o n s a v e d " ? >

Seejecutaradelasiguienteforma

$ c u s t o m e r = n e w C u s t o m e r $ c u s t o m e r > s e t N a m e ( ' J a m e s B o n d ' ) > s e t S t r e e t A d d r e s s ( ' A b c s t r e e t ' ) > s e t C i t y ( ' L o n d o n ' ) > s e t C o u n t r y ( ' E n g l a n d ' ) > s a v e ( ) ? >

PublicadoporAprendiendoPHP5en10:20

MIRCOLES18DEENERODE2012

Bootstrapping
El Bootstrapping es el proceso de arranque de toda la aplicacin que Zend_Tool ha diseado,estcompuestoportresarchivoas:index.php,application.iniyBootstrap.php index.php Seencuentradentrodeldirectoriopublicyeselprincipalpuntodeentradaparatodaslas peticiones realizadas a la aplicacin. Todas las solicitudes realizadas son enrutadas a travsdeestearchivo.

aprendiendophp5.blogspot.com

9/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

Sedescribebrevementesucdigo Cdigo: //Definepathtoapplicationdirectory defined('APPLICATION_PATH')||define('APPLICATION_PATH', realpath(dirname(__FILE__).'/../application')) //Defineapplicationenvironment defined('APPLICATION_ENV')||define('APPLICATION_ENV', (getenv('APPLICATION_ENV')?getenv('APPLICATION_ENV'):'production')) //Ensurelibrary/isoninclude_path set_include_path(implode(PATH_SEPARATOR,array(realpath(APPLICATION_PATH. '/../library'),get_include_path(), ))) /**Zend_Application*/ require_once'Zend/Application.php' //Createapplication,bootstrap,andrun $application=newZend_Application(APPLICATION_ENV,APPLICATION_PATH. '/configs/application.ini') $application>bootstrap()>run() La constante APPLICATION_PATH define la ruta del directorio application, este valor permite acceder a todos los archivos almacenados dentro de la estructura del directorio creado. La constante APPLICATION_ENV define la forma como se comportar la aplicacin en entornos de desarrollo para que muestre o no mensajes de error, bien sea que nuestra aplicacin este en produccin o desarrollo, esto se logra teniendo en cuenta la funcin getenv()quepermitecomprobarlasvariablesdeentornodelsistema. En la siguiente lnea se debe garantizar la inclusin de la librera de clases de Zend Framework mediante el include_path. Para inicializar y crear la aplicacin se vincula medianterequire_oncela clase Application.php , sta mediante su constructor pasa dos valores,elambienteoentornodedesarrolloyelpathdelarchivoinicialdeconfiguracin application.ini. Application.phpseencargatambinentreotrascosasdeautocargarlasclasessolicitadas cuandosecreansusrespectivasinstancias,estoesfacilitadoporlaclase require_once 'Zend/Loader/Autoloader.php' adems, mediante el patrn de diseo Singletonpermiteslocrearunainstanciadedichaclase.

aprendiendophp5.blogspot.com

10/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

publicstaticfunctiongetInstance() { if(null===self::$_instance){ self::$_instance=newself() } returnself::$_instance } EstaclaseAutoloader.phptambincontienemtodosparaelcontroldenamespaces,por defectolosnamespacesactivossonZendyZendX Comoltimalneadelarchivoindex.phpaparece $application>bootstrap()>run() Boostrap()inicializalaaplicacinyelmtodorun()inicializaelprocesoMVC,laformade ejecutar dos mtodos seguidos se conoce como interfaces fluidas, mtodo sugerido por MartinFowlerdondesepretendesimplificarlautilizacindemtodosdelaclase,paraque estofuncionecorrectamentecadamtodoretornarlamismainstanciadelobjeto. Para que index.php se convierta en nuestra entrada principal, se tiene que activar el modulo mod_rewrite del servidor Web Apache para reescribir URLs. adems crear un archivoconnombre.htaccess.Zend_Toolhaceestopornosotrosyloubicaenlacarpeta publicalladodeindex.php. public/.htaccess

SetEnvAPPLICATION_ENVdevelopment RewriteEngineOn RewriteCond%{}REQUEST_FILENAMEs[OR] RewriteCond%{}REQUEST_FILENAMEl[OR] RewriteCond%{}dREQUEST_FILENAME RewriteRule^.*$[NC,L] RewriteRule^.*$index.php[NC,L] En ste archivo tambin podemos asignar a la variable de entorno SetEnv APPLICATION_ENVcomodesarrollodevelopmentyluegolapodramoscambiarsegn elambientedelaaplicacin. ParaqueelpatrndediseoMVCdeZendFrameworkfuncionecorrectamenteelarchivo index.phpy.htaccessdebernestararticuladosenformaoptima,estoconstituyelabase deotropatrndediseoFrontController El Front Controller proporciona un punto de entrada nico que controla y gestiona las peticionesWebrealizadas,ldecidequcontroladoroqueaccinsellamarcuandose realiceunapeticin.

aprendiendophp5.blogspot.com

11/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

Application.ini Nuestra aplicacin necesita un archivo de configuracin bsico para inicializar todo el entornodetrabajo,Zend_Toolcreaenformaautomticaestaconfiguracinpreviaenla rutaapplication/configs/application.ini yelcontenidoiniciales: [production] phpSettings.display_startup_errors=0 phpSettings.display_errors=0 includePaths.library=APPLICATION_PATH"/../library" bootstrap.path=APPLICATION_PATH"/Bootstrap.php" bootstrap.class="Bootstrap" appnamespace="Application" resources.frontController.controllerDirectory=APPLICATION_PATH"/controllers" resources.frontController.params.displayExceptions=0 [staging:production] [testing:production] phpSettings.display_startup_errors=1 phpSettings.display_errors=1 comentarios [development:production] phpSettings.display_startup_errors=1 phpSettings.display_errors=1 resources.frontController.params.displayExceptions=1

Seaprecialosdiferentesambientesenloscualeslaaplicacinpuedeserejecutada,cada seccin (staging,testing y development) sobreescribira los mismos valores de la seccin principal [production] , de esa forma se pueden generar ambientes especficos o de pruebasegnsenecesite,cadaunadeestasseccionesheredalaslneasdeconfiguracin delaseccinprincipal[production] Bajoapplication.inisepuedenconfigurarrecursosparaserinicializados,porejemplopara inicializarlaconexinanuestrabasededatos. [production] resources.db.adapter=PDO_MYSQL resources.db.params.host=localhost resources.db.params.username=root resources.db.params.password=clave123 resources.db.params.dbname=school2.0 ParainicializarZend_Layout. [production]

aprendiendophp5.blogspot.com

12/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

resources.layout.layout="NameOfDefaultLayout" resources.layout.layoutPath=APPLICATION_PATH"/layouts/scripts/"

Bootstrap El ltimo de los archivos que compone el bootstrapping es Bootstrap.php ste se encuentraubicadoenlarutaapplication/Bootstrap.phpyescreadoporZend_Toolpara facilitarelprocesodearranquedelaaplicacin. Inicialmente se encuentra vacio, a la espera de mtodos especficos que se ejecutaran permanentementedentrodelaaplicacin. classBootstrapextendsZend_Application_Bootstrap_Bootstrap { } Paradefinirunrecursolosnombresdelosmtodosdebernserprotegidos(protected)y comenzarcon_initdeestaformacuandoseinicialicelaaplicacinatravsdeindex.php todoslosmetodosquecumplanconesteprefijosernejecutados. classBootstrapextendsZend_Application_Bootstrap_Bootstrap { protectedfunction_initFoo() { //... } }

PublicadoporAprendiendoPHP5en14:03

MARTES17DEENERODE2012

ZendFrameworkIEstructuradelsitio
Estructuradelproyecto

aprendiendophp5.blogspot.com

13/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

Creando nuestro proyecto desde la consolaD.O.S.omedianteNetbeans la estructura de la aplicacin ser comoapareceenlagrfica.

El directorio application es el "contenedor" de nuestra aplicacin bajo MVC, aqu estar el cdigo de: modelos, vistas controladores y archivos de configuracin como application.ini yBootstrap.php.

De acuerdo a esta estructura Zend Framework 1.11.11 implementaZend_Applicationparafacilitarlaconfiguracindebasesdedatos,manejo de vistas( HTML), reuso de cdigo, archivo de arranque con posibilidad de diferentes ambientes o entornos de trabajo (produccin, desarrollo, pruebas),registrodeplugins,

registrodeactionhelpersymuchoms

Directorio configs: este tiene por defecto el archivo application.ini el cual permite configurarentornosdelaaplicacin,rutadelalibreria,rutadecontroladores. Estedirectoriosepuedecontenerdiferentesarchivos .iniloscualespuedenserllamados desdeelarchivoBootstrap.php

Directoriocontrollers:pordefectoZend_ToolscreaIndexControlleryErrorController.La claseIndexControllertienedosmetodosinit()eindexActionsincdigoaejecutar.

classIndexControllerextendsZend_Controller_Action { publicfunctioninit() { /*Initializeactioncontrollerhere*/ } publicfunctionindexAction() { //actionbody } }

Directoriomodels:inicialmentevacio

Directorio views: dentro de este se encuentra el directorio helpers(ayudantes de las vistasquepermitenreducirysimplificarcdigorepetitivo)y scripts, aquencontrarpor

aprendiendophp5.blogspot.com

14/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

cadacontrollerunacarpetaysuscorrespondientesvistas(cdigoHTML).

Directorio Public: Es el directorio de acceso publico, dentro de l se pueden crear subdirectorioscss,javascripts,images.Eslaentradaprincipaldelaaplicacin,parapoder realizarestafuncinutilizadosarchivos.htaccesseindex.php

Archivo.htaccess

Al tener nuestro VirtualHost activo, todas las peticiones URL hacia nuestro proyecto pasaran por el archivo index.php, esto lo garantiza el archivo .htaccess,(este es un pequeo archivo de texto que permite modificar algunas directivas de Apache de directoriosoarchivos).Laconfiguracinpordefectodeestearchivoes:

RewriteEngineOn RewriteCond%{REQUEST_FILENAME}s[OR] RewriteCond%{REQUEST_FILENAME}l[OR] RewriteCond%{REQUEST_FILENAME}d RewriteRule^.*$[NC,L] RewriteRule^.*$index.php[NC,L]

DirectorioLibrary:Esellugardeubicacindelalibreriaoclasesdelframework,cuando setrabajadeformalocallorecomendableescrearunslodirectorioconlalibreriaeincluir enelpathlarutayasevitamosladuplicidadencadaproyecto.


PublicadoporAprendiendoPHP5en10:58 Etiquetas:EstructuraWebZend_Application

VIERNES6DEENERODE2012

ZendFramework0InstalacinNetBeans7.0.1
NetBeans7.0.1IDE(integrateddevelopmentenvironment)

Eslaherramientaconlacualdigitarnuestrocdigosermuchomsfcil,aunqueexisten alternativasdepagocomoZendStudio,NetBeansesunodelosentornosdedesarrollo gratuitosmaspotentes.Algunasdesuscaractersticas:

SoporteparaJDK7(JavaDevelopmentKit) SoporteHMTL5 Integracinderecientesparches Mejorasderendimiento. GeneratePhpDoc Renamerefactoring,SafeDeleteRefactoring PHP5.3Supportforaliases DescargarNetbeans

aprendiendophp5.blogspot.com

15/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

ParaqueNetBeanssesincroniceconnuestroZendFrameworkysepuedautilizarZend toolsdesdeesteIDE,vamosalalneadecomandosydigitamos: zfsetupconfigfile Dandocomorespuesta: Configfilewrittento\DocumentsandSettings\Administrador/.zf.ini Esto indica que ha creado dentro de nuestro directorio de usuario un archivo zf.ini que contienealgosimilaralosiguiente: php.include_path=".C:\zend\libraryC:\xampp\php\PEAR"

CreandonuestroprimerproyectoZFdesdeNetBeans Mediantelassiguientesimgenespasoapasocrearemosnuestroproyectodesde NetBeans

Seleccionamoslapestaageneralyverificamosquelarutadeubicacindephp.exeeste correctayadicionamosenelincludepathlarutadondeseencuentralalibreriadeZF

Luego en la pestaa ZEND verificamos la ruta donde se encuentra el archivo zf.bat y damosclickenRegisterProviderparaactivarelusodeZendTools,conestomodificamos nuestroarchivozf.inicreadoanteriormente

aprendiendophp5.blogspot.com

16/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

Despues de registrar el proveedor, se debe copiar el archivo NetBeansCommandsProvider.php que esta ubicado en C:\Archivos de programa\NetBeans7.0.1\php\zendylodebepegareneldirectoriodondeseencuentrala librera de zf C:\zend\library si esto no se realiza y usted piensa utilizar la lnea de comandosdesdeunaconsola,saldrunerrorynopermitirejecutarcomandos. Conestosprocedimientoslistos,podemosiniciarlacreacindenuestroproyecto.

Damoselnombredelproyectoylarutadelcdigofuente,seleccionamoslaversinde phpyelencoding

aprendiendophp5.blogspot.com

17/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

SeleccionamoselFrameworkatrabajarenestecasoZendPHPWebFramework

AlpresionarFINISHsecreartodalaestructuradenuestroproyecto

aprendiendophp5.blogspot.com

18/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

VerificamoslacorrectaconfiguracindeZendToolsdelasiguienteforma:nosubicamos enelnombredelproyecto,clickderecho,opcinzend,ejecutarcomando(RunCommand)

Debeaparecerlosiguiente:

Deestaformaquedahabilitadalaposibilidaddeejecutartodosloscomandoseinteractuar muchomsfcilentreNetBeansyZendFramework.
PublicadoporAprendiendoPHP5en09:22 Etiquetas:NetBeans7.0.1

aprendiendophp5.blogspot.com

19/20

30/03/12

Aprendiendo PHP5 :: Aprender PHP :: Aprender UML - Desarrollo de sitios Web - Ing. C

Pginaprincipal
Suscribirsea:Entradas(Atom)

Entradasantiguas

ArmeniaDigital.com.PlantillaPictureWindow.ConlatecnologadeBlogger.

aprendiendophp5.blogspot.com

20/20