Santas globales...!
Lo que sucede es que deseas acceder al valor de una variable desde DENTRO de una funcion... lo cual no puedes. Se llama alcance de una variable, o ambito de la variable (estudiate eso)
Para que a esa variable la puedas acceder debes declararla como global.
Dentro de esa funcion escribe:
Código PHP:
//recorte de codigo
function pintarportatiles($varmodelo)
{
global $producto;
foreach ($varmodelo as $modelo => $detalles)
{
//............
}