Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/04/2014, 12:42
pabliich
 
Fecha de Ingreso: marzo-2010
Mensajes: 28
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta Eliminar duplicados

Hola gente, como va?

Tengo un array(principal) con muchos arrays(asociativos) dentro. El problema es que tengo algunos productos con el mismo numero de "model" dentro de los arrays(asociativos) y salen dos veces en mi lista de productos cuando recorro el array(principal), y yo quiero que solo aparezcan una vez.

Mi codigo php:
Código PHP:
Ver original
  1. foreach ($results as $result) {
  2.                        
  3.                
  4.                 if ($result['quantity'] <= 0) {
  5.                 $rstock = $result['stock_status'];
  6.                 } elseif ($this->config->get('config_stock_display')) {
  7.                 $rstock = "Disponibilidad: " . $result['quantity'];
  8.                 } else {
  9.                 $rstock = "Disponible";
  10.                 }
  11.                
  12.                 $cantidad = strlen($result['name']);
  13.                 $final = $cantidad +1;
  14.                 $name = str_pad($result['name'], $final);
  15.                 $nombre = substr_replace($name, ' ', -6, -1);
  16.  
  17.                 $this->data['products'][] = array(
  18.                     'product_id'  => $result['product_id'],
  19.                     'model'       => substr($result['model'], 0, 9),
  20.                     'thumb'       => $image,
  21.                     'Disponibilidad'   => $rstock,
  22.                     'name'        => $nombre,
  23.                     'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '..',
  24.                     'price'       => $price,
  25.                     'special'     => $special,
  26.                     'tax'         => $tax,
  27.                     'rating'      => $result['rating'],
  28.                     'reviews'     => sprintf($this->language->get('text_reviews'), (int)$result['reviews']),
  29.                     'href'        => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'])
  30.                 );
  31.        
  32.             }




Cada producto posee estos datos en la base de datos: (EJEMPLO)
["product_id"]=> string(5) "37131"
["model"]=> string(9) "045951899"
["thumb"]=> string(79) "http://ecommerce.qplus.com.ar:80/opencart/image/cache/data/noImagen-160x190.jpg"
["Disponibilidad"]=> string(10) "Disponible"
["name"]=> string(42) "ADAPTADOR CASIO CA/CC P/HR-8/HR-100-150 "
["description"]=> string(46) " ADAPTADOR CASIO CA/CC P/HR-8/HR-100-150 .."
["price"]=> string(7) "$120.00"
["special"]=> string(6) "$57.00"
["tax"]=> bool(false)
["rating"]=> int(0)
["reviews"]=> string(25) "Basado en 0 valoraciones."
["href"]=> string(106) "http://ecommerce.qplus.com.ar/librerias/index.php?route=product/product&path=6735&product_id=37131" } }

Como podria hacer para que detecte cuando dos productos tienen un mismo ["model"] y no guarde ese array, asi dsp no se muestra?

Última edición por pabliich; 17/04/2014 a las 12:54