Gracias a tí tambien mortiprogramador por haberte interesado. La verdad es que no tenía ni idea que esto era una unión de conjutos
![sonriente](http://static.forosdelweb.com/fdwtheme/images/smilies/smile.png)
De todas formas he variado el código ya que me devolvía una cadena con el mismo número de elementos que la antigua, en caso de ser pequeña y además no me colocaba en orden los valores del resultado.
Pero después de ver el manual de php encontré otra función que me indica la key de un array y parece ser que esta vez la apliqué correctamente.
Muchas gracias a los dos y si alguna vez os puedo ayudar en algo (que no sea PHP jajajajaj) podeis contar con mi ayuda.
Código final funcionando perfectamente
Código PHP:
for($i=0; $i<$mayor; $i++) {
// Para simplificar la comparacion llenas los campos vacios
if(!isset($comp[$i]))
$comp[$i] = 0; // cambio a cero porque puede haber valores con uno, con 0 no hay nunca
if(!isset($car[$i]))
$car[$i] = 0;
// Buscas el elemento, independientemente de en que posicion se encuentre:
if( in_array($comp[$i], $car) ) {
$posicion=array_keys($car, $comp[$i]);// buscar la key
$resultado.=$tar[$posicion[0]].",";// si existe, se guarda el numero
} else {
if($comp[$i]!=0){ // si distinto de cero la concateno
$resultado .= '1,';
}
}
}
$resultado=substr($resultado, 0, -1);