Ir al contenido principal

Entradas

Mostrando las entradas de 2015

Depurar aplicaciones PHP con Xdebug y netbeans

Introducción Cuando desarrollamos aplicaciones en PHP, en ocasiones nos encontramos en el dilema de que nuestro código no hace lo que esperamos, es en esos momentos queremos saber el contenido de las variables y el flujo de ejecución nuestro código, una solución típica y limitada es utilizar las funciones var_dump, print_r y echo,  pero ¿qué pasa si queremos hacer un seguimiento más avanzado al flujo de ejecución de nuestro código? ,  pues allí es donde entra Xdebug. ¿Qué es depurar o debugging? Según Wikipedia: “es el proceso de identificar y corregir errores de programación. En inglés se le conoce como debugging, es que se asemeja a la eliminación de bichos (bugs), manera en que se conoce informalmente a los errores de programación” https://es.wikipedia.org/wiki/Depuraci%C3%B3n_de_programas ¿Qué es Xdebug? Es una extensión de PHP para hacer debug con herramientas de depuración tradicionales, desde el editor (en este caso desde Netbeans), tal como se hace en lenguaj...

Mostrar parámetros de una función o método en NetBeans

Cuando trabajamos con mucho código ya sea con funciones o métodos, se nos hace complejo recordar cada uno de los parámetros de estos. Cuando documentamos el código, NetBeans nos  muestra la documentación al utilizarlo, pero siempre y cuando estemos escribiendo parte de la función o método,  el problema se origina cuando el código ya está escrito y se quiere modificar algunos parámetros. La solución es ubicarte en la función o método y presionar <<Ctrl + P>> y nos mostrará todos los parámetros posibles del método o la función. Y taran funciona, pero solo es una solución parcial, ya que te muestra solo los parámetros y no muestra los tipos de datos,  valores por defecto, ni descripción del parámetro.

Github con Netbeans o Netbeans con Github

¿Qué es Git? Wikipedia lo define así: es un software de control de versiones diseñado por Linus Torvalds, pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando éstas tienen un gran número de archivos de código fuente. ¿Qué es Control de versiones? Wikipedia dice: es la gestión de los diversos cambios que se realizan sobre los elementos de algún producto o una configuración del mismo. Una versión, revisión o edición de un producto, es el estado en el que se encuentra el mismo en un momento dado de su desarrollo o modificación. Un sistema de control de versiones debe proporcionar: Mecanismo de almacenamiento de los elementos que deba gestionar (ej. archivos de texto, imágenes, documentación...). Posibilidad de realizar cambios sobre los elementos almacenados (ej. modificaciones parciales, añadir, borrar, renombrar o mover elementos). Registro histórico de las acciones realizadas con cada elemento o conjunto de elementos (normalmente...

Tipos de datos en php

Php admite cuatro tipos escalares (boolean, integer, float o double y string); dos tipos compuestos (array y object); dos tipos especiales (NULL y resource) y también algunos pseudotipos (mixed, number, callback y void). A continuación detallamos algunos de los más comunes: Boolean TRUE/FALSE Expresa un valor de verdad; 0, 0.0, “”, “0”, array vacío y NULL son consideradas FALSE y cualquier otro valor es TRUE. Integer Números enteros {…, -2, -1, 0, 1, 2, …} Float Los números de punto flotante, 1.32 String Es una serie de caracteres donde cada carácter es lo mismo que un byte. Se pude definir entre comillas simples o comillas dobles, de preferencia utilizar comillas simples, ya que esta no tiene caracteres de  escape (\n, \t, entre otros). Array Es un tipo de datos que asocia valores con claves. La clave puede ser un integer o un string. El valor puede ser de cualquier tipo. Object Es una instancia de clase. NULL Representa una variable sin valor, una va...

DocBlock en PHPDoc

Conforme va creciendo una aplicación, se va complicando el manejo del proyecto, por ejemplo para que sirva cada clase, cada método, cada atributo, y no solo para el desarrollador, sino para todos los colaboradores  y así ellos puedan entender partes del código sin necesidad de analizar el código línea a línea. ¿Qué es PHPDoc? Wikipedia dice: es una adaptación de javadoc para php que define un estándar oficial para comentar código php, con las siguientes características: Hace comentarios que pueda leerse en un método estándar para animar a los programadores a definir y comentar los aspectos del código que normalmente se ignoran. Permite que los generadores de documentos externos como phpDocumentor puedan crear la documentación API en buen formato y fácil de entender. Permite que algunos IDEs como Zend Studio, NetBeans y Aptana Studio interpreten los tipos de variables y otras ambigüedades en el lenguaje de programación. DocBlock Son bloques de comentarios y se suelen...

Generar documentación php con apigen 4.1

Conforme va creciendo una aplicación, se va complicando el manejo del proyecto, por ejemplo para que sirva cada clase, cada método, cada atributo, y no solo para el desarrollador, sino para todos los colaboradores  y así ellos puedan entender partes del código sin necesidad de analizar el código línea a línea. El estándar de programación, define las reglas para escribir y documentar código, además de cómo se comunican las diferentes piezas de código desarrolladas por diferentes equipos. El objetivo de esto es que parezca que el código ha sido escrito por una única persona. De allí la importancia de documentar el código. ¿Qué es PHPDoc? Wikipedia dice: es una adaptación de javadoc para php que define un estándar oficial para comentar código php, con las siguientes características: Hace comentarios que pueda leerse en un método estándar para animar a los programadores a definir y comentar los aspectos del código que normalmente se ignoran. Permite que los generadores de d...

Generar documentación PHP – con apigen 2.8 y netbeans 8.0.1

Descargar apigen desde https://github.com/apigen/apigen/downloads   Extraer lo descargado a la carpeta de instalación de php , en mi caso que utilizo wamp seria en C:\wamp\bin\php\php5.5.12  Buscamos y editamos el bat de apigen, ubicada en C:\wamp\bin\php\php5.5.12\apigen\apigen.bat , le damos clic derecho y editar. En la parte que dice “php.exe” lo remplazamos por la dirección completa del intérprete de php, en mi caso es C:\wamp\bin\php\php5.5.12\php.exe, quedando finalmente así: @echo off REM ApiGen 2.8.0 - API documentation generator for PHP 5.3+ REM REM Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) REM Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) REM Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) REM REM For the full copyright and license information, please view REM the file LICENCE.md that was distributed with this source code. REM IF EXIST "@php_bin@" ( "@php_bin@" "@bin_d...

Módulo mod_rewrite de Apache (urls amigables)

Este módulo de apache nos permite la reescritura de URLs, proporciona una manera flexible y potente para manipular las URL utilizando un número ilimitado de reglas. Cada regla puede tener un número ilimitado de condiciones de la regla adjunta, para que pueda volver a escribir la URL en base a variables de servidor, variables de entorno, las cabeceras HTTP, o marcas de tiempo. Estas reglas se pueden invocar en el archivo httpd.conf o en los .htaccess de cada carpeta. Instalando y habilitando mod_rewrite  En el archivo de configuración de apache httpd.conf en mi caso C:\wamp\bin\apache\apache2.4.9\conf\httpd.conf buscar la línea que dice: #LoadModule rewrite_module modules/mod_rewrite.so Y quitar el # para que esa línea ya no sea tomada como comentario y así ya cargara el modulo. Por ultimo nos queda hacer que apache busque los archivos .htaccess en cada directorio de tu servidor, para esto buscamos en el archivo httpd.conf lo siguiente: <Directory "c:/wamp/w...

Autocompletado en Netbeans sin necesidad de instanciar clases

En php generalmente dividimos los código en varios archivos, y las variables que declares en un archivo ya no está disponible en otro archivo, por ende no funciona el autocompletado en netbeans. Hare un pequeño ejemplo sencillo para poder ilustrar el problema y dar una posible solución (no creo que sea la única). Tendremos 3 archivos: principal.php, archivo que se ejecuta; Operador.php, archivo en el cual se define una clase; y parte.php; una pequeña porción de código. Archivo Operador.php <?php class Operador { private $_a; private $_b; public function __construct($a = 0, $b = 0) { $this->_a = $a; $this->_b = $b; } public function sumar() { return $this->_a + $this->_b; } public function restar() { return $this->_a - $this->_b; } } Archivo principal.php <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>ejemplo<...

Modelo de datos para una encuesta

Modelo de datos para encuesta, la aplicación lo hice con codeigniter, espero subirlo pronto.

Reproducir archivos mp4 sin necesidad que el archivo se descargue completamente - handbrake

En ocasiones los videos mp4 no inician la reproducción hasta descargar por completo, y causan molestias, este problema se debe a que los metadatos del archivo mp4 están al final del archivo, una solución es mover dichos metadatos al principio del archivo. Optimizando videos mp4 con handbrake Handbrake es un programa libre y de código abierto para la transcodificación multihilo de archivos de audio y video, para OS X, Ubuntu y Windows. Descargar handbrake de http://sourceforge.net/projects/handbrake/ Instalamos handbrake, la instalación requiere de pocos pasos. Optimizar todos los mp4 de una carpeta con handbrake 1. Iniciar handbrake 2. Configurar la carpeta donde se guardara los videos optimizados (Tool / Options / Output Files). En Default Path, elegir la carpeta donde se guardara los videos. Close para regresar. 3. Configurar el tipo de archivo y su optimización, es importante elegir MP4 y activar Web Optimized, el resto de las opciones lo deja...

Instalar varias versiones de Mozilla Firefox en Windows

A veces tenemos la necesidad de probar nuestras aplicaciones web en diferentes navegadores y en sus diferentes versiones, en el caso de Firefox no se puede tener varias versiones instaladas al mismo tiempo, por más que se hagas instalaciones personalizadas eligiendo otra carpeta de destino. Una posible solución es instalar las versiones portables, funciona pero no he quedado conforme, la otra solución es la que detallo continuación. Crearemos un perfil de ejecución para cada versión de Firefox, y haremos instalaciones personalizadas para cada versión. Creando un nuevo perfil Presionamos tecla Windows + R (ventana ejecutar) y escribir: firefox –profilemanager Se abrirá la siguiente ventana, en tu caso solo aparecerá “default” a mi aparece varios porque tengo todas esas ya instaladas. Creamos un nuevo perfil (crear perfil) Poner el nombre de perfil, yo le pongo ff3 porque será firefox 3.0. Ahora ya tengo el perfil ff3 agregado, luego salir ...