Foros del Web » Programando para Internet » PHP »

modificar array

Estas en el tema de modificar array en el foro de PHP en Foros del Web. Hola gente, teniendo 2 arrays, como se puede modificar un valor en particular? ej: 1- Array ( [0] => 1 [1] => 2 [2] => ...
  #1 (permalink)  
Antiguo 19/09/2011, 07:27
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
modificar array

Hola gente,
teniendo 2 arrays, como se puede modificar un valor en particular?

ej:
1-
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)
2-
Array
(
[0] => 10
[1] => 20
[2] => 30
[3] => 40
[4] => 50
)

que el primero tenga los valores del segundo
  #2 (permalink)  
Antiguo 19/09/2011, 07:33
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: modificar array

Tiene q ser una broma... xD

Para modificar un array, lo haces igual que una variable.

Para acceder a un "valor" del array, puedes hacerlo así:
Código PHP:
//Creo un array
$arr = array('a''b''c''d');
//Muestro un valor concreto
echo $arr[0]; //Esto mostrará 'a' por pantalla
//Cambio el valor
$arr[0] = 'g';
//Vuelvo a mostrarlo
echo $arr[0]; //Esto mostrará 'g' por pantalla 
Dónde 0 es el index (puede ser texto!)

Para más info http://es2.php.net/manual/en/language.types.array.php
__________________
>> Eleazan's Source
>> @Eleazan
  #3 (permalink)  
Antiguo 19/09/2011, 07:52
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
Respuesta: modificar array

Hola Eleazan, pareciera que si, pero que pasa cuando un array tiene N nodos y es recursivo?
como saber cuando hay que modificar y cuando no?
no quise poner el ejemplo del array recursivo para complicarla, pero hay va:

Código PHP:
Ver original
  1. <?php
  2. $frases[] = array('yahoo'=> array('title'=> array('count'=>1, 'text'=>"Yahoo!!") , '__total__'=>20));      
  3. $frases[] = array('google'=> array('title'=> array('count'=>21, 'text'=>"google!!") , '__total__'=>230));  
  4. $frases[] = array('msn'=> array('title'=> array('count'=>25, 'text'=>"msn!!") , '__total__'=>123, 'mas'=> array('elem1','elem2')));
  5. $frases[] = array('elem3');
  6.  
  7. /* asi se ve la estructura del array
  8. Array
  9. (
  10.     [0] => Array
  11.         (
  12.             [yahoo] => Array
  13.                 (
  14.                     [title] => Array
  15.                         (
  16.                             [count] => 1
  17.                             [text] => Yahoo!!
  18.                         )
  19.                     [__total__] => 20
  20.                 )
  21.         )
  22.     [1] => Array
  23.         (
  24.             [google] => Array
  25.                 (
  26.                     [title] => Array
  27.                         (
  28.                            [B] [count] => 21
  29.                             [text] => google!![/B]
  30.                         )
  31.                     [__total__] => 230
  32.                 )
  33.         )
  34.     [2] => Array
  35.         (
  36.             [msn] => Array
  37.                 (
  38.                     [title] => Array
  39.                         (
  40.                             [count] => 25
  41.                             [text] => msn!!
  42.                         )
  43.                     [__total__] => 123
  44.                     [mas] => Array
  45.                         (
  46.                             [0] => elem1
  47.                             [1] => elem2
  48.                         )
  49.                 )
  50.         )
  51.     [3] => Array
  52.         (
  53.             [0] => elem3
  54.         )
  55. )
  56. */
  57. ?>
quisiera reemplazar los valores de google por gmail
  #4 (permalink)  
Antiguo 19/09/2011, 08:05
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: modificar array

¿Quieres cambiar el "key" 'google'?

Si es eso, podrías hacer algo así

Código PHP:
$arr['gmail'] = $arr['google'];
unset(
$arr['google']); 
Si lo que quieres es acceder a distintos "niveles", es simplemente $arr[0][0]...

Esq no se si te estoy entendiendo xD
__________________
>> Eleazan's Source
>> @Eleazan
  #5 (permalink)  
Antiguo 19/09/2011, 08:17
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
Respuesta: modificar array

es perfecto, gracias

Etiquetas: modificar
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 19:37.