Foros del Web » Programando para Internet » PHP »

Dividir array a partir de otro

Estas en el tema de Dividir array a partir de otro en el foro de PHP en Foros del Web. Hola Amigos este arreglo @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original Array (     [ 0 ] => 1     [ 1 ] => ...
  #1 (permalink)  
Antiguo 10/12/2012, 05:13
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 2 meses
Puntos: 4
Dividir array a partir de otro

Hola Amigos
este arreglo
Código PHP:
Ver original
  1. Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4    [4] => 5    [5] => 6    [6] => 7    [7] => 8    [8] => 9    [9] => 10)

necesito dividirlo en este caso en 2 desde este otro
Código PHP:
Ver original
  1. Array(    [0] => 4    [1] =>6    )

por ejemplo que tome los primeros 4 elementos y se cree otro array y que continue con los siguiente elementos formando mas arrays
lo mas parecido que encontre fue array_slice() pero sin resultados favorables
desde ya agradezco cualquier ayuda que me puedan brindar
Saludos!
  #2 (permalink)  
Antiguo 10/12/2012, 07:10
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 8 meses
Puntos: 26
Respuesta: Dividir array a partir de otro

A ver si entiendo lo que pides.

De un array de por ejemplo de largo 10, que se creen 3 arrays, el primero serian las 4 primeras partes del array, luego otro de 4 con las siguientes 4 y para finalizar con la resta.

Es eso?
__________________
Siempre fallaras el 100% de los tiros que no te atrevas a lanzar.
El 98% de los adolescentes han fumado, si eres del dichoso 2% que no lo ha hecho, copia y pega esto en tu firma.
  #3 (permalink)  
Antiguo 10/12/2012, 07:51
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 2 meses
Puntos: 4
Respuesta: Dividir array a partir de otro

perfecto!!!
justamente eso
Gracias
Saludos
  #4 (permalink)  
Antiguo 10/12/2012, 07:54
Avatar de fishdesign  
Fecha de Ingreso: abril-2011
Ubicación: Málaga
Mensajes: 389
Antigüedad: 13 años, 8 meses
Puntos: 95
Respuesta: Dividir array a partir de otro

http://php.net/manual/es/function.array-chunk.php
__________________
Web Designer.
Themes-Up!, próximamente
  #5 (permalink)  
Antiguo 10/12/2012, 08:07
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 2 meses
Puntos: 4
Respuesta: Dividir array a partir de otro

gracias fishdesign ya lo estube probando de esta forma
Código PHP:
Ver original
  1. $cantidad=array('2','3');
  2. $valor = array('a', 'b', 'c', 'd', 'e');
  3. foreach($cantidad as $can)
  4. {
  5. $retorno=array_chunk($valor, $can);
  6. }
  7. print_r($retorno);
y obtengo esto
Código PHP:
Ver original
  1. Array ( [0] => Array ( [0] => a [1] => b ) [1] => Array ( [0] => c [1] => d ) [2] => Array ( [0] => e ) )
despues lo quiero leer de esta forma
Código PHP:
Ver original
  1. foreach($retorno as $g)
  2. {
  3.     echo $g;
  4.     }
y me devuelve ARRAY ARRAY


saludos
  #6 (permalink)  
Antiguo 10/12/2012, 11:10
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 2 meses
Puntos: 4
No encuentro solucion a esto (dividir array)

Hola amigos!!!
vuelvo a crear otro post porque estube avanzando en mi problema
pero siempre me falta algo y no se que es
Código PHP:
Ver original
  1. $cantidad=array(4,6);
  2.     $serial_id_incre=array(1,2,3,4,5,6,7,8,9,10);
  3.    
  4.     foreach($cantidad as $can)
  5.                             {
  6.                                 for($i=0;$i<$can;$i++)
  7.                                     {
  8.                                         echo $serial_id_incre[$i].'--';
  9.                                     }
  10.                             }
esta porcion de codigo me devuelve
1234123456
y necesito que me devuelva en 2 arrays
1234
5678910
ya probe con array_splice() y array_chunk pero sin exito
saludos y muchas gracias!!!
  #7 (permalink)  
Antiguo 10/12/2012, 11:16
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 10 meses
Puntos: 36
Respuesta: No encuentro solucion a esto (dividir array)

¿Necesitas obtener los primeros 4 valores y ponerlos en un arreglo y el resto en otro?
  #8 (permalink)  
Antiguo 10/12/2012, 11:18
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 2 meses
Puntos: 4
Respuesta: No encuentro solucion a esto (dividir array)

exactamente!!!!
de acuerdo a los elementos con contenga el array cantidad
saludos
muchas gracias
  #9 (permalink)  
Antiguo 10/12/2012, 11:27
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Dividir array a partir de otro

Puedes usar array slice, sin problema:

Código PHP:
Ver original
  1. $part = array_slice($array, 0, 4);
  2. $part2 = array_sice($array, 4);
  #10 (permalink)  
Antiguo 10/12/2012, 11:36
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 2 meses
Puntos: 4
Respuesta: Dividir array a partir de otro

Hola GatorV ya probe con array_slice()
pero seguro lo estoy haciendo mal
lo estoy Haciendo asi
Código PHP:
Ver original
  1. $cantidad=array(4,6);
  2.     $serial_id_incre=array(1,2,3,4,5,6,7,8,9,10);
  3.    
  4.     foreach($cantidad as $can)
  5.                             {
  6.                                 for($i=0;$i<$can;$i++)
  7.                                     {
  8.                                         $part = array_slice($serial_id_incre, 0, $can);
  9.                                         print_r($part);
  10.                                     }
  11.                             }
y me devuelve esto
Código PHP:
Ver original
  1. Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4)Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4)Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4)Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4)Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4    [4] => 5    [5] => 6)Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4    [4] => 5    [5] => 6)Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4    [4] => 5    [5] => 6)Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4    [4] => 5    [5] => 6)Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4    [4] => 5    [5] => 6)Array(    [0] => 1    [1] => 2    [2] => 3    [3] => 4    [4] => 5    [5] => 6)
saludos muchas gracias
  #11 (permalink)  
Antiguo 10/12/2012, 11:39
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 5 meses
Puntos: 793
Respuesta: Dividir array a partir de otro

usa array slice y no necesitas más:

Código PHP:
Ver original
  1. <?php
  2.  
  3. $cantidad = array(4, 6);
  4. $serial_id_incre = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
  5.  
  6. $parte1 = array_slice($serial_id_incre, 0, $cantidad[0]);
  7. $parte2 = array_slice($serial_id_incre, $cantidad[0], $cantidad[1]);

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #12 (permalink)  
Antiguo 10/12/2012, 11:43
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 2 meses
Puntos: 4
Respuesta: Dividir array a partir de otro

Perfecto andresdzphp gracias
me estaba complicando yo mismo
gracias a todos
Saludos

Etiquetas: dividir, encuentro, resultados, solucion
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:00.