Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/10/2012, 05:18
alyciashape
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años
Puntos: 58
Arrays asociativos, añadir valores etc.

Tengo problemas, para variar, con los arrays asocitivos. Lo probé de mi y una formas y no hay manera. Partiendo de esto
Código PHP:
$nombre     $datos[3];
$factura     $datos[4];
$importe    $datos[5];

/*Quiero meter esos datos que vienen de un csv, 
 * en un array porque tengo que realizar varias operaciones con ellos. 
 * en principio había pensado en meterles un índica (array asociativo)
 * pero creo que voy a pasar porque no lo logro y tampoco es esencial.
 * lo que quiero es meter todos los datos que voy apasando en diferentes filas.
 * El resultado que espero es algo así:
 *
 * nombre     factura     importe
 * pepe         1752        1300 €
 * carlos        1753        7 €
 * brais          1754       45 €
 *
 * que salga el índice es lo de menos pero me gustaría para que quedara bonito.
 * Lo que intenté fué así:
 */

$clientes = array("nombre" => $nombre"factura" => $factura"importe" => $importe);

//El problema es que si hago un var_dump sólo me mete una línea, así que me está sobreescribiendo siempre los valores ya que el índice es el mismo. En fin que no se como arreglarlo.

//Probé con otras cosas como $clientes[]['nombre'] = $nombre; pero no se si es correcto o hay otra mejor forma? 

Hay algo como var_dump o print_r que imprima los datos del array pero separando mejor los valores? es que me sale una ristra de texto dificil de leer, juraria que uno de los 2 mostraba los datos de una forma más ordenada.

Por otro lado necesito buscar posteriormente un cliente en el array, si es que me vuelve a salir, y así sumar el importe a ese cliente para tener el total y no tener varias líneas con el mismo cliente y diferentes importes. No se si esto se puede hacer.

Se que hay array_search y también in_array o algo así. Pero aunque sepa que sí hay ese valor, como se en que indice está?

Última edición por alyciashape; 31/10/2012 a las 05:27