Qué es composer

Qué es composer

Herramientas
Composer es un gestor de dependencias para PHP. De algún modo podrías considerarlo como el heredero de PEAR. Hoy día se considera el gestor de dependencias de-facto por unas cuantas buenas razones: Es muy simple de operar Cuenta con un repositorio super completo (Packagist) Disminuye significativamente los problemas de cambio de ambiente de ejecución (Mediante su funcionalidad de congelar dependencias) Si nunca lo usaste, te recomiendo que lo pruebes. Instalación La instalación de composer es sumamente simple. Como dice el sitio getcomposer.org en su página de descargas: php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" php composer-setup.php php -r "unlink('composer-setup.php');" A partir de ahí tendrás disponible un comando llamado composer (Qué sorpresa ¿no?). Si lo ejecutas…
Leer más
Cuál es el mejor Framework PHP

Cuál es el mejor Framework PHP

Herramientas
Esto es casi como preguntar ¿a quién querés más? ¿a tu mamá o a tu papá? Como en muchas otras áreas de la tecnología (del desarrollo web más específicamente), la gente tiende a fanatizarse en favor de las herramientas que le resultan más familiares, con lo cual, encontrar opiniones objetivas es ciertamente difícil. No voy a dar muchas vueltas, el framework que a mí más me gusta es Symfony, pero de ninguna forma diría que es "el mejor". Conozco unos cuantos buenos: ZendFramework Laravel Yii También hay algunos que se conocen como micro-frameworks: Silex Tonic En definitiva, la elección siempre será tuya. Lo que puede ayudarte a tomar la decisión es (en este orden): Tamaño de la comunidad de usuarios/desarrolladores Existencia de documentación Finalidad ¿Cuál es tu framework favorito?
Leer más
En qué casos conviene usar un framework PHP

En qué casos conviene usar un framework PHP

Buenas prácticas
O en otras palabras: Framework, ¿sí o no? Qué dilema... Tuve esta discusión bastantes veces (y debo decir que fueron largas horas difícilmente bien invertidas) con compañeros de trabajo y demás colegas. Debo admitir, nobleza obliga, que fue hace mucho tiempo... hace mucho que no escucho a nadie sostener la postura opuesta (La discusión hoy pasa por cuál framework elegir). La respuesta corta es en todos. La respuesta más elaborada (por si tenés tiempo y querés leer un poco más) es esta: Salvo que pienses desarrollar un negocio alrededor de un framework de tu propia autoría o tengas mucho tiempo y ganas de aprender mucho PHP, usar un framework estándar es una decisión que no debería tomarte más de 10 segundos. ¿Por qué? Simple: ¡tenés muchísimos problemas más importantes por resolver! El…
Leer más
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:…
Leer más

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…
Leer más

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

Cómo hacer para...
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…
Leer más

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

Cómo hacer para...
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…
Leer más
Cómo iterar sobre un jSON usando php

Cómo iterar sobre un jSON usando php

Cómo hacer para...
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…
Leer más