Foros del Web » Programando para Internet » PHP »

reemplazar valores array

Estas en el tema de reemplazar valores array en el foro de PHP en Foros del Web. Tengo una duda trabajando con arrays. Yo tengo un array con sus valores: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original $a = array ( 'valor1' , ...
  #1 (permalink)  
Antiguo 03/03/2013, 09:52
laura_moreno14
Invitado
 
Mensajes: n/a
Puntos:
reemplazar valores array

Tengo una duda trabajando con arrays.

Yo tengo un array con sus valores:

Código PHP:
Ver original
  1. $a = array ('valor1', 'valor2', 'valor3')

y quiero remplazar los valores de este array por su peso en gramos, para luego sumarlos con array_sum().

Los pesos de cada valor están guardados en otro array:

Código PHP:
Ver original
  1. $b = array ('valor1' => 10, 'valor2' => 12, 'valor3' => 5)

No existe alguna funcion estilo strtr () pero utilizando un array de entrada en vez de un string? Como podria hacerlo?

Gracias de antemano!
  #2 (permalink)  
Antiguo 03/03/2013, 10:05
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 12 años, 9 meses
Puntos: 181
Respuesta: reemplazar valores array

Perdon, creo que me he perdido un poco:

¿Para que quieres hacer un reemplazo si ya tienes el array que necesitas?

actualmente tienes esto:

Código PHP:

    $a 
= array (0=>'valor1'1=>'valor2'2=>'valor3'
Y quieres reemplazarlo por

Código PHP:
$b=array ('valor1' => 10'valor2' => 12'valor3' => 5

Como ves te tocaria hacer un cambio de valores y llaves a la vez. Echale una revisada a esta parte del manual para ver si te ayuda. Si tienes alguna pregunta adicional ya nos comentas.

http://php.net/manual/es/ref.array.php
__________________
Blog de humor http://elcuasatar.net63.net/
  #3 (permalink)  
Antiguo 03/03/2013, 10:21
laura_moreno14
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: reemplazar valores array

No tengo el array que necesito, tal vez no me he explicado bien.

El array $a es diferente cada vez según los productos que elige el usuario. Pongamos que el usuario elige tres productos de un total de 20.

Cada producto tiene su peso y los productos son limitados. Esta información es la que esta guardada en el array b.

Necesito sustituir cada producto producto por su peso, en el array $a, buscando en el array $b.

Ya estube buscando en el manual de php todas las funciones de array pero no encontre lo que necesito.

Array_combine es lo mas parecido, pero no es lo que busco.
  #4 (permalink)  
Antiguo 03/03/2013, 10:37
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 12 años, 9 meses
Puntos: 181
Respuesta: reemplazar valores array

Pues no se, yo crearia un array temporal (Para ser super originales podriamos llamarlo $c) y hacer el cambio. Ni me tome la molestia de buscar alguna función porque me parece que es muy sencillo de hacer. No me demore ni un minuto. Doy por entendido que el arreglo $a es dinamico y el $b es estático (si te entendi bien)

Código PHP:
<?php

$a 
= array ('valor1''valor2''valor3');
$b = array ('valor1' => 10'valor2' => 12'valor3' => 5);
for (
$i=0;$i<sizeof($a);$i++)
{
  
$c[$a[$i]]=$b[$a[$i]];
}
print_r($c);
?>
Seguro se podra hacer mas facil con funciones de arreglos, pero a mi se me ocurrio la manera "dificil"de hacerlo
__________________
Blog de humor http://elcuasatar.net63.net/

Última edición por cuasatar; 03/03/2013 a las 10:47
  #5 (permalink)  
Antiguo 03/03/2013, 10:53
laura_moreno14
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: reemplazar valores array

Gracias, me funciona aunque solo me cuenta una vez cada producto. Si hay dos veces el mismo producto, solo añade su peso una vez. Como podría arreglarlo?
  #6 (permalink)  
Antiguo 03/03/2013, 10:57
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 12 años, 9 meses
Puntos: 181
Respuesta: reemplazar valores array

Cita:
Iniciado por laura_moreno14 Ver Mensaje
Gracias, me funciona aunque solo me cuenta una vez cada producto. Si hay dos veces el mismo producto, solo añade su peso una vez. Como podría arreglarlo?

Yo doy la caña y te enseño a pescar, pero no te puedo dar el pescado. Revisa las funciones de arreglos que con lo que te di mas sus funciones podras completar la solución. Suerte con eso.

p.s. Ahi te dejo una pista

http://www.php.net/manual/es/functio...unt-values.php

p.s.2 Yo ya hice hace rato la tarea, pero apenas la acabes compartela con la comunidad para que todos aprendamos.
__________________
Blog de humor http://elcuasatar.net63.net/

Última edición por cuasatar; 03/03/2013 a las 11:34

Etiquetas: reemplazar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:22.