Hola andresdzphp, gracias por responder!
He intentado usar tu código, pero no lo conseguí, me da que estaba formando mal el array que le pasaba.
Encontré una solucion, no muy elegante y menos práctica aún, pero...funciona
Código PHP:
Ver original$ceros=0;
$unos=0;
if($data[1]==0){
if($ceros==0 and $unos==1){
$ceros++;
$objeto[1][]='x';
$unos=0;
}else{
$ceros++;
}
}else{
if($ceros==0){
$objeto[1][]='x';
}else{
$objeto[1][]=$ceros;
$ceros=0;
$unos++;
}
}
}
en este ejemplo solo proceso el primer campo de datos de la tabla, luego tendría que repetir este trozo
Código PHP:
Ver originalif($data[1]==0){
if($ceros==0 and $unos==1){
$ceros++;
$objeto[1][]='x';
$unos=0;
}else{
$ceros++;
}
}else{
if($ceros==0){
$objeto[1][]='x';
}else{
$objeto[1][]=$ceros;
$ceros=0;
$unos++;
}
}
40 y pico veces mas pero cambiando el número de índice y las variables que cuentan los unos y los ceros, si alguno me indicais alguna alternativa mas elegante, realizaría mas pruebas antes de decantarme por escribir el tocho.
Ya he probado a meter el while dentro de un for, para controlar las repeticiones por campo
Código PHP:
Ver original$runos=0;
$rceros=0;
for($r=1; $r<=50; $r++){
if($rdata[$r]==0){
if($rceros==0 and $runos==1){
$rceros++;
$robjeto[$r][]='x';
$runos=0;
}else{
$rceros++;
}
}else{
if($rceros==0){
$robjeto[$r][]='x';
}else{
$robjeto[$r][]=$rceros;
$rceros=0;
$runos++;
}
}
}
}
pero no funciona, solo hace el while el primer ciclo del for y me guarda un único array en el primer indice, ya no se que probar, alguna idea?
Saludos.