Archivos diarios: 03/08/2014

3 entradas

Logo de PHP

Trabajando con ficheros CSV desde PHP

Otra vez más, con PHP tenemos también una utilidad, herramienta, librería, función, o como queramos llamarle.. para hacernos más fácil la vida diaria al programar con PHP. De igual manera que podemos leer o escribir en un fichero de texto, también podemos leer o escribir línea a línea en ficheros estándar CSV. Los ficheros CSV son los llamados ficheros de valores separados por comas. Dentro se ordenan fila a fila listas de elementos separados por comas, como su nombre indica. Todo ésto lo podemos manejar con el uso general de un fichero abriendo y cerrando ficheros como veniamos haciendo con fopen y fclose. Y ahora usaremos fgetcsv o fputcsv para leer línea a línea del fichero. Dejemos de tanto hablar de lo mismo y vamos a ver un ejemplo.. Supongamos que tenemos el siguiente fichero: 21,89,7,16,76,18,52,51,58,52 80,3,20,6,83,64,21,73,14,80 7,30,23,75,71,9,96,56,47,25 Tenemos 3 filas de 10 elementos separados por comas. Supongamos ahora que tenemos el siguiente código PHP: <?php $fichero = ‘nombreFichero.csv’; // si el fichero lo abrimos para leer correctamente if (($manejador = fopen ( $fichero, “r” )) !== FALSE) { echo “Leyendo el fichero: <br>n”; // leemos hasta que se acaba fila a fila while ( ($arrayFila = fgetcsv ( $manejador, […]

Objetos relacionados

PHP 10: Objetos a partir de otros, las interfaces

Siguiendo con la serie de mini-tutoriales para empezar a programar con PHP, ahora vamos con las interfaces.. Vienen a ser el siguiente paso en la encapsulación de objetos. Primero teníamos las clases que representan objetos únicos, con los cuales podemos construir otros a partir de ellos utilizando la palabra ‘extends’. Luego podíamos declarar clases abstractas que tenían métodos abstractos que no se implementaban (programaban) en la clase padre, sino que se obligaba a que se implementaran en las clases hijas. Las clases hijas extendían de la clase abstracta padre de igual manera que antes. Ahora tenemos las interfaces, que vienen a ser clases que simplemente nos dicen los métodos que hay que implementar en las clases hijas. Unas interfaces se pueden extender en otras, con lo que heredan las declaraciones de los métodos utilizando la palabra clave extends, pero siguen sin implementar los métodos porque siguen siendo interfaces. Pero cuando llegamos a una clase hija que va a implementar dichos métodos utilizaremos la palabra clave implements. Con un ejemplo se verá claro y rápido. El ejemplo   <?php error_reporting(E_ALL); ini_set(‘display_errors’, ‘1’); // interfaz que obliga a implementar dos funciones interface iVehiculo { public function escribirMatricula(); public function coordenadas(); } // […]

GNU/Linux

Cómo mantener actualizado Linux

Me pasé definitivamente a Linux como sistema operativo principal en mi máquina de trabajo. No hecho en falta ninguna aplicación y siempre encuentro una solución para cada problema, totalmente gratis y Open Source. ¿Qué más puedo pedir? Cómo actualizar Mantenerte actualizado es bien sencillo, basta con ejecutar dos comandos desde un terminal del sistema operativo: sudo apt-get update ..con el que se descargarán los listados de versiones de programas disponibles que tenemos instalados en nuestro sistema. Luego con: sudo apt-get upgrade ..se actualizará el sistema, mostrando qué paquetes están disponibles y si deseas instalarlos. Puede ocurrir que alguno de los paquetes esté retenido por alguna razón mostrando un mensaje como el siguiente: Los siguientes paquetes se han retenido: nombrePaquete 0 actualizados, 0 se instalarán, 0 para eliminar y 1 no actualizados. Me viene funcionando que para instalar manualmente el paquete retenido me basta con ejecutar lo siguiente y todo actualizado: sudo apt-get upgrade nombrePaquete Un poco más Si queremos ver cuáles son los repositorios y versiones desponibles para usar tenemos el fichero /etc/apt/sources.list Se pueden añadir ‘sources’ manualmente. Algún programa nos lo puede pedir para su instalación. Puede ser la mejor forma para instalarlo porque así después se puede mantener […]