Ver Mensaje Individual
  #5  
Antiguo 24-11-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Reputación: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Código PHP:
<?php

/**
 * En este ejemplo utilizaremos como fuente de datos un sencillo Array. Natu-
 * ralmente, la fuente de datos en tu caso sería la propia base de datos, es
 * decir, la correspondiente consulta que te los retornara.
 */


// Fuente de datos (ficticia)
$fuenteDeDatos = array();

// Una "columna" de datos
$datosPersonas = array
(
  
'nombre' => 'Pedro',
  
'apellidos' => 'Caralamaro Periquito',
  
'ciudad' => 'El Cairo',
  
'pais' => 'Egipto'
);

// Añadimos los datos
$fuenteDeDatos[] = $datosPersonas;

// Otra "columna" de datos
$datosPersonas = array 
(
  
'nombre' => 'Juan',
  
'apellidos' => 'Altisonante Manrique',
  
'ciudad' => 'Oaxaca',
  
'pais' => 'México'
);

// Añadimos los datos
$fuenteDeDatos[] = $datosPersonas;

// Preparamos la salida (en formato CVS)
$archivoCvsSalida '';

// Recorremos la fuente de datos
foreach($fuenteDeDatos as $datosPersona)
{
  
/**
   * Y vamos ahora a añadir los datos al "archivo CVS".
   * 
   * Se trata de añadir los distintos valores separados por comas,
   * (de ahí las siglas CVS, Comma Value Separeted).
   * 
   * Creo que encerrar los propios valores entre comillas no es siempre
   * necesario, pero, ante la duda, yo lo hago así aquí. En todo caso...
   */
  
$archivoCvsSalida .= "\"{$datosPersona['nombre']}\",";
  
$archivoCvsSalida .= "\"{$datosPersona['apellidos']}\",";
  
$archivoCvsSalida .= "\"{$datosPersona['ciudad']}\",";
  
$archivoCvsSalida .= "\"{$datosPersona['pais']}\"";   
  
$archivoCvsSalida .= "\n";      
}

/**
 * Ahora podremos ver el archivo en el navegador. Lo hacemos entre etiquetas
 * de "preformateado" para que se pueda apreciar correctamente el retorno de
 * carro entre los distintos registros/columnas.
 */ 

echo '<pre>';
echo 
$archivoCvsSalida;
echo 
'</pre>';

/**
 * Si todo ha ido bien deberíamos ver algo como esto en el navegador:
 * 
 * "Pedro","Caralamaro Periquito","El Cairo","Egipto"
 * "Juan","Altisonante Manrique","Oaxaca","México"
 * 
 * Es decir, tenemos ahora un archivo en que cada una de sus filas representa
 * un registro en una base de datos. Estos datos están separados por comas y
 * hay un registro por cada fila.
 * 
 * Obviamente quien "importe" este archivo hará el resto, es decir, se supone
 * en este caso que contamos con una tabla en una base de datos con los campos
 * correspondientes: nombre, apellidos, ciudad y pais
 * 
 * El "importador" irá recorriendo el archivo línea por línea y añadirá los
 * valores en cada campo tal y como se los presentamos. Es decir, se entiende
 * que el primer valor corresponderá al campo "nombre", el segundo a "apellidos"
 * y así sucesivamente.
 * 
 */

?>
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita