TigerZF
🌐Español

72.2. Uso de la herramienta CLI

La CLI, o herramienta de línea de comandos (conocida internamente como la herramienta de consola), es actualmente la interfaz principal para enviar peticiones de Zend_Tool. Con la herramienta CLI, los desarrolladores pueden realizar peticiones a las herramientas dentro de la "ventana de línea de comandos", también conocida comúnmente como una ventana de "terminal". Este entorno predomina en los sistemas *nix, pero también tiene una implementación habitual en Windows con cmd.exe, console2 y también con el proyecto Cygwin.

72.2.1. Configuración de la herramienta CLI

Para realizar peticiones a las herramientas a través de la línea de comandos, primero necesita configurar el cliente para que su sistema pueda manejar el comando "zf". El cliente de línea de comandos, a todos los efectos, es el archivo .sh o .bat proporcionado con su distribución de Zend Framework. En trunk, se puede encontrar aquí: http://framework.zend.com/svn/framework/standard/trunk/bin/.

Como puede ver, hay 3 archivos en el directorio /bin/: un zf.php, zf.sh, y zf.bat. zf.sh y zf.bat son los envoltorios de cliente específicos del sistema operativo: zf.sh para el entorno *nix, y zf.bat para el entorno Win32. Estos envoltorios de cliente son responsables de localizar el php.exe adecuado, localizar el zf.php, y transmitir la petición del cliente. El zf.php es el responsable de comprender su entorno, construir el include_path adecuado, y transmitir lo que se proporciona en la línea de comandos al componente de biblioteca adecuado para su despacho.

En definitiva, quiere asegurarse de dos cosas para que todo funcione sin importar el sistema operativo en el que se encuentre:

  1. zf.sh/zf.bat es accesible desde el path de su sistema. Esto es la capacidad de invocar zf desde cualquier lugar en su línea de comandos, sin importar cuál sea su directorio de trabajo actual.

  2. ZendFramework/library está en su include_path.

[Note] Nota

Nota: aunque lo anterior son los requisitos más ideales, simplemente puede descargar Zend Framework y esperar que funcione como algún comando ./path/to/zf.php.

72.2.2. Configuración de la herramienta CLI en sistemas tipo Unix

La configuración más común en el entorno *nix es copiar zf.sh y zf.php en el mismo directorio que su binario de PHP. Este se puede encontrar generalmente en uno de los siguientes lugares:

/usr/bin
/usr/local/bin
/usr/local/ZendServer/bin/
/Applications/ZendServer/bin/

Para averiguar la ubicación de su binario de PHP, puede ejecutar 'which php' en la línea de comandos. Esto devolverá la ubicación del binario de PHP que utilizará para ejecutar los scripts de PHP en este entorno.

El siguiente paso es asegurarse de que la biblioteca de Zend Framework esté configurada correctamente dentro del include_path del PHP del sistema. Para averiguar dónde se encuentra su include_path, puede ejecutar php -i y buscar la variable include_path, o de forma más concisa, ejecutar php -i | grep include_path. Una vez que haya encontrado dónde se encuentra su include_path (generalmente será algo como /usr/lib/php, /usr/share/php, /usr/local/lib/php, o similar), asegúrese de que el contenido del directorio /library/ se coloque dentro del directorio especificado en su include_path.

Una vez que haya hecho esas dos cosas, debería poder ejecutar un comando y obtener la respuesta adecuada como esta:

Si no ve este tipo de salida, vuelva a comprobar su configuración para asegurarse de que tiene todas las piezas necesarias en el lugar adecuado.

Hay un par de configuraciones alternativas que podría querer emplear dependiendo de la configuración de su servidor, su nivel de acceso, o por otras razones.

La configuración alternativa implica mantener la descarga de Zend Framework junta tal cual, y crear un enlace desde una ubicación de PATH hacia zf.sh. Esto significa que puede colocar el contenido de la descarga de ZendFramework en una ubicación como /usr/local/share/ZendFramework, o de forma más local como /home/username/lib/ZendFramework, y crear un enlace simbólico hacia zf.sh.

Suponiendo que desea colocar el enlace dentro de /usr/local/bin (esto también podría funcionar para colocar el enlace dentro de /home/username/bin/ por ejemplo) ejecutaría un comando similar a este:

ln -s /usr/local/share/ZendFramework/bin/zf.sh /usr/local/bin/zf

# OR (for example)
ln -s /home/username/lib/ZendFramework/bin/zf.sh /home/username/bin/zf

Esto creará un enlace al que debería poder acceder globalmente en la línea de comandos.

72.2.3. Configuración de la herramienta CLI en Windows

La configuración más común en el entorno Windows Win32 es copiar zf.bat y zf.php en el mismo directorio que su binario de PHP. Este se puede encontrar generalmente en uno de los siguientes lugares:

C:\PHP
C:\Program Files\ZendServer\bin\
C:\WAMP\PHP\bin

Debería poder ejecutar php.exe en la línea de comandos. Si no puede, primero consulte la documentación que vino con su distribución de PHP, o asegúrese de que la ruta a php.exe esté en su variable de entorno PATH de Windows.

El siguiente paso es asegurarse de que la biblioteca de Zend Framework esté configurada correctamente dentro del include_path del PHP del sistema. Para averiguar dónde se encuentra su include_path, puede escribir php -i y buscar la variable include_path, o de forma más concisa ejecutar php -i | grep include_path si tiene Cygwin configurado con grep disponible. Una vez que haya encontrado dónde se encuentra su include_path (generalmente será algo como C:\PHP\pear, C:\PHP\share, C:\Program%20Files\ZendServer\share o similar), asegúrese de que el contenido del directorio library/ se coloque dentro de su directorio especificado en include_path.

Una vez que haya hecho esas dos cosas, debería poder ejecutar un comando y obtener la respuesta adecuada como esta:

Si no ve este tipo de salida, vuelva a comprobar su configuración para asegurarse de que tiene todas las piezas necesarias en el lugar adecuado.

Hay un par de configuraciones alternativas que podría querer emplear dependiendo de la configuración de su servidor, su nivel de acceso, o por otras razones.

La configuración alternativa implica mantener la descarga de Zend Framework junta tal cual, y modificar tanto su PATH del sistema como el archivo php.ini. En el entorno de su usuario, asegúrese de añadir C:\Path\To\ZendFramework\bin, para que su archivo zf.bat sea ejecutable. Además, modifique el archivo php.ini para asegurarse de que C:\Path\To\ZendFramework\library esté en su include_path.

72.2.4. Otras consideraciones de configuración

Si por alguna razón no desea tener la biblioteca de Zend Framework dentro de su include_path, hay otra opción. Hay dos variables de entorno especiales que zf.php utilizará para determinar la ubicación de su instalación de Zend Framework.

La primera es ZEND_TOOL_INCLUDE_PATH_PREPEND, que antepondrá el valor de esta variable de entorno al include_path del sistema (php.ini) antes de cargar el cliente.

Alternativamente, podría querer usar ZEND_TOOL_INCLUDE_PATH para reemplazar completamente el include_path del sistema por uno que tenga sentido específicamente para la herramienta de línea de comandos zf.

72.2.5. ¿Hacia dónde ir ahora?

En este punto, ya debería estar preparado para comenzar a iniciar algunos comandos más "interesantes". Para empezar, puede ejecutar el comando zf --help para ver qué tiene disponible.

Continúe en la sección "Crear proyecto" de Zend_Tool_Project para entender cómo utilizar el script zf para la creación de proyectos.