puede ser que te marque error la primera vez porque aún no le has dicho que es de tipo array, lo que recomiendo es usar isset para verificar si la variable fue establecida, de lo contrario aplicarle un array explícitamente, así al serializar el módulo session de PHP sabe que es un array
![apachar ojo](http://static.forosdelweb.com/fdwtheme/images/smilies/wink.png)
:
Código PHP:
Ver original//suponiendo que session_start() YA fue llamado ;-)
if (! isset($_SESSION['productos'])){ $_SESSION['productos'] = array(); //con ésto se establece como array. }
me imagino que puedes colocar éste fragmento en tu archivo de includes donde inicias sesión, ya que es algo básico que no necesitas llamar en todos lados y puede centralizarse