Por qué usar una máquina virtual para proyectos PHP

Por qué usar una máquina virtual para proyectos PHP

Buenas prácticas
[caption id="attachment_665" align="aligncenter" width="628"]  [/caption] Respuesta rápida: para evitar sorpresas desagradables. Paso a detallar un poco de qué estoy hablando con un par de historias que me pasaron hace unos cuantos años durante el desarrollo de un proyecto personal. Como la mayoría de los desarrolladores que están empezando, tenía instalado en mi computadora (Windows en aquel entonces) el paquete XAMPP y mi forma de trabajo era programar y probar en mi propia computadora y luego, mediante FTP, subir mis cambios al hosting que había contratado con la empresa de un amigo. Un día una de las últimas actualizaciones que había realizado a mi código funcionaba perfectamente en mi casa, pero al subirla a mi hosting las cosas eran un poco diferentes (léase: no andaba nada :p). Hago la historia corta:…
Read More

Un ejemplo de máquina virtual lista para PHP+Symfony2+XDebug

Ejemplos
Charlando con algunos amigos desarrolladores php surgió un tema que les estaba resultando complicado, así que decidí poner mi pequeño granito de arena (para ellos y para otros que tal vez estén pasando por lo mismo). Ya habíamos hablado del por qué usar una máquina virtual para proyectos PHP. Ya estaba claro que usar un framework es más conveniente que no usarlo (independientemente de cuál fuera) y les había comentado sobre mis herramientas favoritas de automatización (Ansible y Vagrant). Todos estábamos de acuerdo "en la teoría", pero a la hora de pasar a la práctica se veían algo frustrados por no poder lograr tener una máquina virtual que fuese fácil de usar y que soportara, entre otras cosas, el uso de XDebug. Lo que te voy a mostrar a continuación son los archivos…
Read More

Cómo obtener la cotización del día de una acción con PHP

Cómo hacer para..., Uncategorized
Todo lo que voy a mostrarte acá se basa en la API de Yahoo Finance. Lo primero que tenés que hacer es instalar composer. Segundo, inicializar el proyecto: php composer.phar init Tercero: agregar la dependencia del paquete https://github.com/scheb/yahoo-finance-api: php composer.phar require scheb/yahoo-finance-api Y después podés usar un código como este: #!/usr/bin/php <?php require __DIR__ . '/vendor/autoload.php'; $client = new \Scheb\YahooFinanceApi\ApiClient(); $d = new DateTime($argv[2]); echo "Buscando ".$argv[1]." en fecha: ".$d->format('d/m/y').PHP_EOL; try { $data = $client->getHistoricalData($argv[1], $d, $d); echo $data['query']['results']['quote']['Close'].PHP_EOL; } catch ( Exception $e ) { echo $e->getMessage().PHP_EOL; } En este ejemplo, lo que tenés es una utilidad de línea de comandos que recibe dos parámetros: El ticker (Símbolo del papel en cuestión, por ejemplo TS para la acción de Tenaris) La fecha. La llamada sería así: php get_stock_price.php TS Yesterday y el…
Read More

Cómo obtener información de un sitio que no tiene API usando PHP

Cómo hacer para..., Uncategorized
Me encontré recientemente con este problema desarrollando un sistema para un cliente y creo (¡y espero!) que mi experiencia pueda ayudar a otros. El desafío era el siguiente: nuestro cliente es una empresa que se dedica a la administración de activos financieros. Como parte de su operatoria, requieren la consolidación de información que actualmente está dispersa en una serie de planillas Excel. Parte de esa información se refiere a movimientos de acciones y bonos. Una de las tareas que se realizaba manualmente era el cálculo de cuánto dinero se había movido al realizar una compra o venta de alguno de estos instrumentos (Simple: cantidad de títulos por precio del título al día de la transacción). La complejidad de este cálculo reside en cómo conseguir el precio que tenía el activo al día en…
Read More
Cómo iterar sobre un jSON usando php

Cómo iterar sobre un jSON usando php

Cómo hacer para..., Uncategorized
La forma más sencilla de iterar sobre un jSON usando php es convertirlo a un array. Simplemente se trata de usar la función json_decode pasándole como parámetro el string jSON que querés recorrer y true (para que el resultado sea devuelto como un arreglo asociativo). Una vez que el jSON está transformado a array se puede iterar sobre él como lo harías con cualquier otro array php, usando un foreach o alguna otra estructura. Por ejemplo, si tuvieses en la variable $json el siguiente texto: { "rojo":"#f00", "verde":"#0f0", "azul":"#00f", "cyan":"#0ff", "magenta":"#f0f", "amarillo":"#ff0", "negro":"#000" } Para recorrerlo desde php harías algo como: $array = json_decode( $json ); foreach ( $array as $nombre => $hexa ) { echo $nombre.'='.$hexa; } Y la salida que obtendrías sería: rojo = #f00 verde = #0f0…
Read More