Es que no es lo mismo
print @unique;que
print "@unique";En el primer caso, se sacan los valores del
array @unique todos juntos, porque le estamos pidiendo que saque los valores de @unique, tal cual. En cambio, en el segundo caso, con las comillas dobles estamos solicitando una conversión a cadenas de caracteres de un
array que, por defecto, es sacar todos los elementos de un
array, unidos por el valor contenido en la variable especial
$". En otras palabras,
print "@unique";es lo mismo que
print join($", @unique);Por defecto,
$" es un espacio en blanco.
Todo depende de lo que quieras hacer y de cómo quieras mostrarlo. Fíjate en la última propuesta que te he puesto en el mensaje mío anterior, con la solución del join().
Otra forma de hacerlo, más limpia:
Using perl Syntax Highlighting
$" = '][';
print "[@unicas]\n";
Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4