miércoles, 27 de agosto de 2014

Gelsheet: Open Source y Hojas de cálculo basadas en Web utilizando PHP


Gelsheet es una aplicación PHP de código libre para la creación de hojas de cálculo basadas en Web. Nace como un módulo de Feng Office (OpenGoo) y viene en 3 versiones: independiente, WP plugin y plugin de Feng Office. La aplicación ofrece una interfaz de escritorio capaz de manejar múltiples documentos con fórmulas en celdas, estilo de contenido y exportarlos a diferentes formatos.


Sitio OficialSourceforge | Demostración

viernes, 22 de agosto de 2014

Ventajas de Programar en PHP


Rasmus Lerdorf escribió el primer código en PHP - primero llamado "Personal Home Page" - como una serie de scripts de Perl que utilizó para rastrear a los visitantes en su página web y ver quien estaba viendo su currículo. Con el tiempo reescribió PHP como un motor de scripting y añadió soporte para formularios. Con los años el acrónimo Personal Home Page cayó en desuso y se convirtió en PHP Hypertext. PHP puede ser usado para crear aplicaciones web que van desde sitios web personales hasta comercio electrónico y portales como foros de discusión, blogs, etc.


Las principales ventajas de la programación PHP incluyen: 

Open Source

PHP está disponible gratuitamente para usarlo. La comunidad de desarrolladores de PHP de código abierto ofrece apoyo técnico y está mejorando constantemente la actualización de las funcionalidades básicas de PHP. PHP está disponible en forma gratuita bajo la Licencia Pública General de PHP y la mayor parte del software asociado requerido como MySQL, editores de texto y servidor Apache también son de libre acceso, por lo que resulta muy rentable para los desarrolladores. 

Cross-Platform 

PHP proporciona una alta compatibilidad con los principales sistemas operativos y servidores web, de forma que permite ser fácilmente implementado en diferentes plataformas. Scripts PHP pueden ejecutarse a través de sistemas operativos como Linux, Windows, Solaris, OpenBSD, Mac OSX, etc.  También proporciona soporte para los principales servidores web como Apache, IIS, iPlanet, Nginx, etc. 

Potencia 

Varias tareas web ahora pueden realizarse fácilmente usando PHP. Por ejemplo, ahora podemos desarrollar desde pequeños sitios web hasta enormes sitios web empresariales y corporativos, foros informativos, plataformas de chat, CRM, carritos de compras para comercio electrónico y sitios con bases de datos grandes. 

Fácil de usar 

Diseñado en una manera fácil de usar, PHP ofrece más flexibilidad que C, C ++ y ASP y en general ayuda a aumentar el tráfico al sitio. 

Rápido

PHP está diseñado para trabajar bien con la web, y así que cosas como el acceso a GET y POST y trabajar con HTML y URLs están nativos en el lenguaje PHP. Esto hace que sea muy conciso y directo para desarrollar un sitio web.

Extensiones 

Al ser un lenguaje de código abierto, un gran número de bibliotecas y extensiones, para extender sus funcionalidades básicas, están disponibles para su descarga. El código fuente de PHP puede ser modificado para incluir extensiones y componentes aumentando así su extensibilidad. 

Fácil implementación 

Hay muchas empresas de alojamiento que, por unos pocos dólares al mes, le dará un servidor con PHP para que pueda hacer una página web muy fácilmente. 

Actualiza automáticamente 

Hoy en día desarrollar sitios web dinámicos está en gran demanda debido a sus características específicas; como actualización automática. 

Apoyo de la Comunidad

Una gran ventaja que ofrece PHP es su comunidad. Si usted está buscando un script en particular, es probable que otro usuario ya ha creado algo similar. Compruebe dentro de la comunidad PHP. Del mismo modo, si ha creado una función que otros puedan utilizar, asegúrese de ofrecer su código para otros. 

Otras herramientas 

Si necesita acceder a otras herramientas basadas en web, como los mapas de Google (que es siempre recomendable para un sitio web empresarial), o cualquier otra herramienta, PHP hace que sea fácil. 

Seguridad 

PHP ofrece seguridad, así que ayuda a prevenir los ataques maliciosos. Estos niveles de seguridad se pueden ajustar en el archivo .ini 

Disponibilidad de Talento

Usted puede contratar a programadores PHP con más facilidad que programadores de otros lenguajes, ya que muchos desarrolladores conocen el idioma. 

En resumen,

  • Open Source, PHP es totalmente gratuito. 
  • PHP puede ser fácilmente integrado directamente al HTML. 
  • Independiente de la plataforma que se ejecuta en los servidores ya sea Windows, Linux o Mac. 
  • Corre más rápido en Internet e integra más fácilmente AJAX, callbacks, etc.
  • Interfaces muy fáciles para Apache / MySQL
  • Un montón de buenos libros y ayuda en línea. 
  • Está disponible con la documentación en varios idiomas.
  • Fácil de aprender en comparación con muchos otros lenguajes de script servidor. Tiene una sintaxis que es fácil de analizar. 
  • Un montón de empresas de hosting están preparados para ejecutar scripts PHP, sin necesidad de configuración especial. 
  • Facilidad de acceder herramientas basadas en la Web por ejemplo Google Maps, etc.
  • Un montón de buen código fuente para su uso y/o aprendizaje, así como muchas librerías útiles para trabajar con archivos PDF, gráficos, etc.


Por último,

    Si usted está listo para agregar contenido dinámico a sus páginas web, considere el uso de PHP. Es gratis, fácil de aprender y se integra bien a través de muchas plataformas y con varios programas de software. Hay un montón de tutoriales disponibles en la net. Para nosotros será un placer leer sus comentarios. Siéntase libre para compartir sus ideas con nuestros lectores.

    Traducción libre del artículo Advantages of PHP Programming en TutorialChip.com

    miércoles, 20 de agosto de 2014

    ImageWorkShop: Clase PHP para la manipulación de imagenes


    ImageWorkshop es de código abierto y una clase PHP para la gestión y manipulación de imágenes. La clase tiene una "edición de imágenes con lógica", basada en capas que permite superponer varias capas o incluso grupos de capas (con la opción de cada capa siendo manipulado de manera diferente). Tiene soporte para muchas funciones como poner una imagen (o muchas imágenes) sobre otra (bueno para las marcas de agua), recortar, mover, cambiar el tamaño, rotar (con cualquier grado), superposición, escritura y mucho más.

    Principales características:
    • Facilita la creación de imágenes miniaturas (thumbnails), marcas de agua, layers, etc.
    • Herramientas para rotar, recortar, mover, superponer,… imágenes.
    • Licencia open source.
    Cómo funciona ImageWorkshop

    La clase ImageWorkshop permite crear/manipular 3 tipos de objetos:

    • un layer: una capa (imagen) transparente para pegar otras imágenes;
    • un grupo: un grupo de imágenes con diferentes niveles en la pila (en la superposición de las capas).
    • un documento: un grupo que engloba layers y grupos de layers.
    Toda esta simple abstracción de objetos, es lo que permite manipular esta clase para procesar dinámicamente cualquier imagen o grupo de estas.

    Un ejemplo práctico:

    Descargamos la librería.

    Usamos la siguiente imagen como base (poster-php.jpg [800x450px]):



    Intentaremos aplicarle la siguiente marca de agua (dominando-php-sello.png [102x102px]):



    Copiamos el archivo crearimagen.php con el siguiente código:
    <?php
    
    use PHPImageWorkshop\ImageWorkshop; 
    
    // Cargamos la librería
    require_once(__DIR__.'/PHPImageWorkshop/ImageWorkshop.php');
     
    // Inicializamos la capa base
    $dominandoPHPCapa = ImageWorkshop::initFromPath(__DIR__.'/images/poster-php.jpg');
    
    // Inicializamos la marca de agua o sello
    $dominandoPHPSello = ImageWorkshop::initFromPath(__DIR__.'/images/dominando-php-sello.png');
    
    // Aplicamos el sello sobre la capa base
    $dominandoPHPCapa->addLayerOnTop($dominandoPHPSello, 12, 12, "RB");
    
    // Generamos la imagen
    $image = $dominandoPHPCapa->getResult();
    
    // Mostramos el resultado 
    header('Content-type: image/jpeg');
    imagejpeg($image, null, 95); // Elegimos mostrarlo en JPG con 95% de calidad
    exit;
    Y el resultado obtenido:

    Fuente | Github | Demostración y Ejemplos | Descargar

    domingo, 17 de agosto de 2014

    jqmPHP: Código HTML generado para jQuery


    jqmPhp es un proyecto de código abierto que tiene por objeto simplificar el uso de jQuery Mobile con PHP. Se trata de un paquete de clases PHP que pueden generar las salidas HTML que jQuery Mobile está esperando dentro de pocas líneas. Las clases están en archivos separados (con nombres paralelos a las características de JQM) para que pueda optar por utilizar sólo los necesarios. Todas las clases del paquete jqmPhp se pueden convertir en cadena y se imprimen con una función de echo.

    Un ejemplo simplificado:
    <?php 
        include 'lib/jqmPhp.php';
        $j = new jqmPhp();
        $j->addBasicPage('', 'Hola Mundo', '¡Esta trabajando!');
        echo $j;
    ?>
    Código generado:
    <!DOCTYPE html>
    <html>
        <head xmlns="http://www.w3.org/1999/xhtml">
            <meta charset="UTF-8"></meta>
            <link type="text/css" rel="stylesheet" href="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.css">
    </link>
            <script type="text/javascript" src="http://code.jquery.com/jquery-1.5.min.js"></script>
            <script type="text/javascript" src="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.js">
            </script>
            <title></title>
        </head>
        <body>
            <div data-role="page">
                <div data-role="header" data-position="inline">
                    <h1>Hola Mundo</h1>
                </div>
                <div data-role="content">¡Esta trabajando!</div>
            </div>
        </body>
    </html>
    Resultado:

    Sitio Oficial | Código Fuente en Google | Demostración

    viernes, 15 de agosto de 2014

    Dummy: Un Toolkit inteligente PHP de generación de contenidos para la creación rápida de prototipos web y QA


    Dummy, un conjunto de herramientas PHP, va un paso más allá mediante la inserción automática de imágenes de retina con visualización optimizada en cualquier tamaño y texto en cualquier longitud / formato con pocas líneas de código. Además de los párrafos y títulos, tiene opciones para insertar nombres de usuario, fechas, nombres de autores o ciudades. Y, para las imágenes, se le puede pedir que inserte avatares y banners también. Este kit de herramientas simplemente hace posible probar cómo un diseño se comportará con imágenes y contenidos en diferentes tamaños y cantidades.

    Ejemplo:
    <?php require_once("dummy/dummy.php") ?>
    <img src="<?php dummy("image/landscape@480x320") ?>" />


    Para mayor información

    Fuente | Github | Demostración

    miércoles, 6 de agosto de 2014

    Parse para PHP: Un fractal de Diseño Rápido de Aplicaciones


    Nos hemos encontrado con una interesante noticia, han lanzado el Parse PHP SDK, que permitirá la integración Parse para una nueva clase de aplicaciones y diferentes casos. Este es su primer SDK para un lenguaje de servidor, y el primero en ser verdaderamente código abierto.

    PHP es un lenguaje de programación muy popular y ha sido siempre en el top 10 en el índice TIOBE durante los últimos 15 años. Algunos indicadores señalan que todavía está sirviendo a la gran mayoría de los sitios web en Internet. Hasta ahora, si querías acceder Parse de PHP, la API REST era la única opción. Unas bibliotecas de derivadores API Parse han sido puestos en libertad por terceros en GitHub. Si bien es interesante, muchos desarrolladores solicitaron un mejor soporte PHP y la gente de Parse.com construyo un SDK. 

    ¿Qué es Parse?



    Parse es lo que se denomina un Backend as a service (BaaS) que nos va a permitir disfrutar de múltiples funcionalidades en la nube, permitiéndonos el desarrollo de aplicaciones que requieran un backend con muy poco esfuerzo.

    A principios de este año en la conferencia F8 de desarrolladores en Facebook, lanzaron el completamente reinventado Facebook SDK para PHP. En los 3 meses desde su lanzamiento ha habido más de 160 commits, con buenos aportes y mejoras de 20 desarrolladores apasionados que utilizan y se preocupan por el producto.

    Para una visión general rápida de la SDK, consulte el archivo README. También han actualizado la documentación con una nueva guía de PHP, y añadieron un código PHP de inicio rápido con instrucciones de instalación.

    Ver la fuente en Github.

    Fuente: Blog de Parse

    lunes, 4 de agosto de 2014

    CakeFest 2014, la conferencia sobre CakePHP


    CakeFest 2014, la conferencia anual de CakePHP, se celebra este año en Madrid, España, del 21 al 24 de Agosto. Ya se puede ver el programa online para los 4 días de este evento, y las entradas ya están a la venta. No se pierdan el lanzamineto de CakePHP 3.0, los workshops impartidos por los desarrolladores core del framework, hay más de 22 charlas, presentaciones, keynotes, actividades y más! 

    Mayor información aqui.




    miércoles, 23 de julio de 2014

    Buenas prácticas - Tip #5 - Probar con un Framework de PHP


    Usted puede aprender mucho acerca de PHP simplemente experimentando con los frameworks de PHP. Frameworks como Zend, CakePHP o CodeIgniter le permiten crear rápidamente aplicaciones PHP, sin tener que ser un experto en PHP. En cierto sentido, podemos aprovecharlos en forma de entrenamiento sobre PHP.  Mostrandonos lo que una aplicación de PHP debe parecerse, y podemos observar los conceptos de programación de gran utilidad (como la separación de la lógica sobre el diseño, etc.)

    Para mostrarlo con un ejemplo práctico, realizaremos la implementación de un framework utilizando NetBeans.  Creamos un nuevo proyecto, con el IDE que hemos instalado previamente, utilizando el PHP 5.5 que hemos instalado, en un ambiente Windows 8.1



    Un poco de noción sobre Zend Framework:

    Zend Framework es un framework PHP orientado a objetos 100%, con una fuerte implementación del patrón MVC, una abstracción de datos muy simple de usar y un rendimiento muy estable, siendo uno de los frameworks más robustos de la actualidad. Además, al ser un framework de código abierto, evitaremos posibles problemas con licencias como nos podría ocurrir con algún framework restrictivo o de pago. Para conocer más podemos visitar su página oficial.

    Paso 1: Descargar el Zend Framework 2 Skeleton

    Como vámos crear un proyecto usando Zend Framework 2 desde nuestro IDE NetBeans, requerimos Zend Framework 2 Skeleton en formato Zip.



    Descargar desde la siguiente ubicación: https://github.com/zendframework/ZendSkeletonApplication

    Paso 2: Creamos un nuevo Proyecto

    Hacemos click en la opción de Nuevo Proyecto:



    Luego seleccionamos PHP y en el lado derecho PHP Application y luego click en Siguiente.



    En Project Name colocamos el nombre de nuestro proyecto, para este ejemplo utilizaremos DominandoPHP, luego en Sources Folder colocamos donde serán ubicados los fuentes de nuestro proyecto. Utilizaremos la carpeta que hemos utilizadon en otros tips, C:\html_publico. Elegimos la versión más nueva soportada, en este caso PHP 5.4 y en Default Encoding, UTF-8. Hacemos click en Siguiente.



    En la configuración de arranque, ya que estamos en la etapa de desarrollo, podemos sacar provecho al Servidor Interno que viene en nuestro PHP, elegimos en Run As, la opción PHP Built-in Web Server, y dejamos los parametros siguientes por defecto. Hostname: localhost, Port: 8000. Hacemos click en Siguiente.



    Marcamos la opción Zend2 PHP Web Framework de los mostrados y podemos verificar si nos muestra alguna advertencia. Hacemos click en Terminar. (Podemos corregirla iendo a Herramientas -> Opciones en la barra principal de NetBeans)



    Ahora comienza el proceso de generación del nuevo Proyecto utilizando ZF2.



    Una vez generados las respectivas carpetas y archivos, ubicamos el archivo module.config.php que esta ubicado dentro de nuestro proyecto en Source Files\module\Application\config



    Y modificamos la línea 65, relatica al idioma, lo cambiamos por 'locale' => 'es_ES', esto nos permitirá generar los archivos es español.



    Ahora hacemos click en Ejecutar el Proyecto DominandoPHP.



    Vemos como se activa el Internal WebServer con el comando:

    C:\php\php.exe -S localhost:8000 -t public


    Anteriormente hemos mostrado como funciona el Servidor Web Interno de PHP, aunque no escribimos sobre la opción -t, con ella especificamos cual va a ser la ruta del directorio raiz de nuestro servidor. En el caso de ZF2 es la carpeta public.

    Abrimos nuestro navegador en http://localhost:8000


    Observamos la ejecución del ZF2.

    Nota: Es posible que se requiera la instalación y configuración de Composer para utilizarlo con NetBeans. Lo cual mostraremos en un futuro artículo. Así como un mayor detalle de las características, ventajas y desventajas de cada uno de los frameworks que podemos encontrar para PHP.

    Creative Commons License
    Tip 5 - Probar con un Framework de PHP por G G Salazar es licenciado bajo Creative Commons Attribution-NonCommercial 4.0 International License.

    martes, 22 de julio de 2014

    Buenas prácticas - Tip #4 - Probar un IDE

    Los Entornos Integrados de Desarrollo (En ingles IDE) son herramientas útiles para cualquier desarrollador. Si bien no son para todo el mundo, un IDE tiene su utilidad. El IDE nos proporciona herramientas como:
    • Resaltado de sintaxis 
    • Completación de código 
    • Avisos de errores
    • Refactorización
    Y muchas otras características. Hay un montón de grandes entornos de desarrollo que hay que apoyar PHP.

    Explicaremos brevemente como podemos instalar Netbeans, la versión 7.4 en idioma español. En un ambiente de Window 8.1

    Paso 1: Visitamos la página oficial de Netbeans y descargamos el IDE.

    Vamos al enlace: netbeans.org


    Buscamos el buton de descargas (download), una vez estemos en la página de descargas, seleccionamos la versión IDE 7.4, que viene en español (aún la comunidad de desarrolladores están trabajando en la traducción de la versión 8.0). Y le damós descargar a Netbeans IDE PHP.


    Paso 2: Instalar Netbeans PHP IDE 7.4

    Una vez descargado el archivo netbeans-7.4-php-windows.exe procedemos a la instalación del mismo.


    Luego de aceptar los terminos de la licencia, nos preguntara por las carpetas donde instalará Netbeans y Java, en nuestro caso las dejamos por defecto.


    Después, procedemos con la instalación en si mismo.


    Paso 3: Configurar Netbeans para el lenguaje en Español

    Ahora debemos dirigirnos al archivo de configuración de Netbeans, llamado netbeans.conf en nuestro caso esta ubicado en C:\Program Files\NetBeans 7.4\etc

    Lo abrimos con editor de texto (en modo de administrador), y buscamos la opción netbeans_default_options y agregamos al final -J-Duser.language=es de la declaración.


    Luego ejecutamos Netbeans, y ya estamos listos para poder utilizarlo en nuestros proyectos de PHP.


    Algo a destacar, es que con NetBeans podemos sacarle provecho al Sevidor Interno de PHP, explicado en el tip anterior, ya que al crear un nuevo proyecto en PHP, nos pregunta en cual servidor queremos implementarlo, y una de las opciones es Built-in Server. Lo explicaremos con mayor detalle en la creación de un nuevo proyecto.

    Creative Commons License
    Tip 4 - Probar un IDE por G G Salazar es licenciado bajo Creative Commons Attribution-NonCommercial 4.0 International License.

    lunes, 21 de julio de 2014

    Nuevo Zend Studio incrementa el soporte de en Eclipse PHP y la productividad de los desarrolladores


    Zend es una de las compañías líderes de PHP ha anunciado la disponibilidad de la nueva versión de Zend Studio, el galardonado entorno de desarrollo integrado (IDE). Ofrece uno de los IDE PHP más abierto con una biblioteca completa de plug-ins elaborados por terceros.

    Entre sus novedades:
    • Integración con Apigility
    • Aplicaciones listas para puesta en Producción
    • Mayor integración con servidores de aplicaciones
    • Mejorada Integración con composer
    • Tamaño reducido, mejor rendimiento, mejor calidad.

    Puedes conseguir mayor información visitando el blog oficial de Zend.

    Video introductorio sobre Zend Studio 11 (en ingles)

    viernes, 18 de julio de 2014

    Buenas prácticas - Tip #3 - Utilizar el principio DRY (No te repitas - Don't Repeat yourself)


    El principio DRY es una buena practica que debemos procurar para todos aquellos que estamos comenzando a desarrollar en PHP, se base en que un código funcional se realice una y solo una vez, de modo tal que pueda ser reutilizable en múltiples aplicaciones. DRY por sus siglas en ingles (Don’t Repeat Yourself) o No te Repitas, es una filosofía de procesos la cual promueve la reducción de código duplicado.

    Según este principio ninguna pieza de información debería estar duplicada nunca debido a que la duplicación incrementa la dificultad en los cambios y evolución posterior, puede perjudicar la claridad y crea un espacio para posibles inconsistencias. Por “pieza de información” podemos, en un sentido amplio, entender desde datos almacenados en una base de datos pasando por el código fuente de una aplicación hasta llegar a información textual o documentación.

    El código duplicado hace que nuestro código sea más difícil de mantener y comprender además de generar posibles inconsistencias. Para ello, dependiendo del caso concreto, la refactorización, la abstracción o el uso de patrones de diseño pueden ser alternativas viables.

    La frase utilizada en idioma inglés es "Don’t be WET, stay DRY", que implica principios de programación opuestos.  El término WET (inglés: mojado), al cual se le han dado muchos significados: “We Edit Terribly”, “We Enjoy Typing”, “Write Everything Twice”, etc. Obviamente, significa que existen “piezas de conocimiento” con múltiples representaciones, que podría traducirse como tener la misma información repetida varias veces.

    Cuando el principio DRY se aplica de forma eficiente los cambios en cualquier parte del proceso requieren cambios en un único lugar. Por el contrario, si algunas partes del proceso están repetidas por varios sitios, los cambios pueden provocar fallos con mayor facilidad si todos los sitios en los que aparece no se encuentran sincronizados.

    Veamos un ejemplo práctico, es común utilizar esta codificación:
    <?php
     $mysql  = mysql_connect ( 'localhost',  'usuario_mysqladmin', 'clave_mysqladmin' );
     mysql_select_db( 'DB_NAME' ) or die( "¡Disculpe !! No se pudo seleccionar la Base de Datos.");
    ?>

    Utilizando el principio DRY, el codigo anterior puede reflejarse de esta forma:

    <?php
     $db_host = 'localhost';
     $db_usuario = 'usuario_mysqladmin';
     $db_clave = 'clave_mysqladmin ';
     $db_database = 'DB_NAME';
     $mysql = mysql_connect($db_host, $db_usuario, $db_clave);
     mysql_select_db($db_database);
    ?>

    Veamos un ejemplo utilizando la función printf().

    Ejemplo de codificación "incorrecta":

    <?php
    echo '<ul>';
    foreach ($aArticulos as $aArticulo)
    {
    // <li><a href="enlace.html" title="título">título</a> (enlace.html)</li>
    
     printf('<li><a href="%s" title="%s">%s</a> (%s)</li>',
      $aArticulo['enlace.html'],
      $aArticulo['título'],
      $aArticulo['título'],
      $aArticulo['enlace.html']);
    }
    echo '</ul>';
    ?>

    El mismo código aplicando el principio DRY:

    <?php
    echo '<ul>';
    foreach ($aItems as $aItem)
    {
     printf('<li><a href="%1$s" title="%2$s">%2$s</a> (%1$s)</li>',
       $aArticulo['enlace.html'],
       $aArticulo['título']);
    }
    echo '</ul>';
    ?>

    Una sugerencia de cuando podemos aplicar este principio:

    1. Si se repite el mismo código varias veces en sucesión, probablemente debería estar usando un bucle
    2. Si se repite el mismo código varias veces en su programa, probablemente deba a dividir ese código a cabo en una función
    3. Si usted se encuentra escribiendo el mismo código en varios programas, probablemente debería estar usando un archivo incluido
    4. Si usted se encuentra escribiendo código complejo para hacer una tarea simple común es probable que haya una función integrada para ayudarle. 
    5. Si usted se encuentra escribiendo código que -. Seguramente - alguien ha hecho antes, mira las bibliotecas de recursos para el idioma que está utilizando - PEAR, PECL, CPAN, Gems ... o en SourceForge.

    Para mayor información pueden consultar la Wikipedia | Wikipedia en Inglés | Consejos de Programación

    miércoles, 16 de julio de 2014

    Buenas prácticas - Tip #2 - Usar el Servidor Web Interno para desarrollar

    Podemos comenzar a aprender o desarrollar en PHP sin tener que instalar y configurar un servidor web completo (se requiere mínimo la versión PHP 5.4). 

    Paso 1: Activar el Servidor Web Interno de PHP

    Sólo debemos ir a la línea de comandos en Windows, Mac o Linux. Debemos posicionarnos en la carpeta donde nuestra aplicación resida, y ejecutar el comando:


    php -S localhost:8000

    Esto ejecurará un servidor web basado en la consola. La raíz (root) de los documentos se ubicará en la carpeta actual:

    PHP 5.5.14 Development Server started at Wed Jul 16 16:22:06 2014
    Listening on http://localhost:8000
    Document root is C:\html_publico
    Press Ctrl-C to quit

    Paso 2: Probar que se esta ejecutando el Servidor
    A continuación, preparamos un sencillo archivo index.php dentro del directorio C:\html_publico con el siguiente contenido:
    <?php
     // Muestra información sobre la configuración de PHP
     phpinfo();
    ?>

    Y procedemos en abrir http://localhost:8000/ en nuestro navegador. Al no incluir explícitamente un nombre de archivo, el servidor devolverá o bien index.php o index.html de la carpeta raíz. Todas las solicitudes de archivos se registran en la ventana de la consola:


    [Wed Jul 16 16:22:39 2014] ::1:64411 [200]: /


    El navegador en este caso nos mostrará la información sobre la configuración actual de PHP del servidor web interno. Podemos observarlo:

    Server API Built-in HTTP server



    Existen otros parametros que podemos asignarle al comando del servidor que iremos mostrando en otros tips. Por ahora, si requiere mayor información sobre el Servidor Web Interno puede visitar la documentación oficial.

    Creative Commons License
    Tip #2 - Usar el Servidor Web Interno para desarrollar por G G Salazar es licenciado bajo Creative Commons Attribution-NonCommercial 4.0 International License.

    martes, 15 de julio de 2014

    Buenas prácticas - Tip #1 - Usar la versión más estable actualmente (5.5)

    Para aquellos que están comenzando, es importante arrancar con la última versión estable de PHP (5.5). En los últimos años ha estado en un proceso de continuo desarrollo y mejoras, sobre las caracteristicas de PHP.  Uno pudiera considerar que las mejoras entre versiones son mínimas, pero en realidad se reflejan en un notable incremento en el rendimiento del sistema.

    Cualquier detalle en partícular sobre las funciones, métodos o mejoras, en la documentación oficial en php.net podra obtener la respuesta.

    Comenzamos a explicar los pasos para instalar la última versión de PHP 5.5 en Windows 8.1 sin tener instalado ningún servidor WEB (Apache o IIS por ejemplo). Ya que por ahora, si es para aprendizaje o desarrollo, podemos empezar sólo con PHP instalado, una facilidad que estudiaremos en el próximo tip.

    La siguiente instalación, de "forma manual", ya que no requerimos de ningún instalador en particular, nos permite tener un mayor control sobre PHP.

    Paso 1: Descargar los archivos

    Para obtener la ultima versión de PHP 5, en formato .zip, podemos visitar la página www.php.net/downloads.php en virtud que vamos a bajar la versión en especifíco para Windows 8.1 podemos ir directamente al sitio: windows.php.net/download/


    Entre las opciones para descargar (binarios o fuentes) elegimos VC11 x64 Thread Safe, particularmente porque la máquina donde estamos ejecutando las pruebas es de 64 bits, la nomeclatura VC11 se refiere a que fue compilado con Visual Studio 2012, y el modo Thread Safe (TS) es una característica que permite optimizar PHP para un entorno multihilo como lo es Windows.



    Paso 2: Extraemos los archivos

    Procedemos a descomprimir los archivos, a efectos de nuestro tutorial lo instalaremos en C:\php




    Por lo que creamos la carpeta en el directorio raiz con el nombre de "php", y extraemos el contenido del archivo php-5.5.14-Win32-VC11-x64.zip dentro del mismo.

    Nota: PHP puede ser instalado en cualquier parte de nuestro sistema, pero debemos referenciar la ubicación de su ruta en los siguientes pasos.

    Paso 3: Configurar php.ini

    Copiamos el archivo C:\ php.ini-development como C:\php.ini adicionalmente debemos utilizar un editor de texto para cambiar algunas líneas.

    Definir el directorio de extensiones:
    extension_dir = "ext"
    

    Habilitar extensiones. Este proceso dependerá de las librerias que requeramos utilizar, pero las siguientes librerias deberían ser suficientes para adaptarse a una buena cantidad de proyectos (quitamos el punto y coma que tienes al comienzo de cada extensión que requerimos activar):


    extension=php_curl.dll
    extension=php_gd2.dll
    extension=php_mbstring.dll
    extension=php_mysql.dll
    extension=php_mysqli.dll
    extension=php_pdo.dll
    extension=php_pdo_mysql.dll
    extension=php_xmlrpc.dll
    

    Si queremos enviar correos electrónicos usando la función mail() de PHP, entonces debemos escribir los detalles del servidor SMTP que utilicemos.

    [mail function]
    ; For Win32 only.
    SMTP = mail.miservidordecorreos.com
    smtp_port = 25
    

    ; For Win32 only.
    sendmail_from = dominandophp@miservidordecorreos.com
    

    Paso 4: Agregar C:\php a la variable de ambiente de ruta.

    Para asegurarse que Windows pueda encontrar la aplicación PHP, hay que cambiar la variable de ambiente. Para ello, ir a Control Panel -> Configuración avanzada del Sistema y en la pantalla de Dialogo de Propiedades del Sistema, hacer clic en Variables de entorno. 
    Buscamos la variable de sistema PATH y agregamos el siguiente código:
    ";C:\php;" 
    al final de la línea de valor de la variable.

    Posiblemente requira reiniciar el sistema.

    Paso 5: Probar que PHP esta ejecutandose.

    Abrimos el prompt de comandos de windows y ejecutamos la siguiente línea de código:
    cd C:\php
    php -v

    Deberíamos obtener como resultado una respuesta de cual versión de PHP esta instalado.


    Creative Commons License
    Tip #1 - Usar la versión más estable actualmente (5.5) por G G Salazar es licenciado bajo Creative Commons Attribution-NonCommercial 4.0 International License.