Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, galera.
Sou iniciante no php, tenho uma dúvida. Veja se podem me ajudar, por favor!
(
[cd_produto] => 1
[ds_produto] => SAPATENIS PEGADA
[ds_longa] => SAPATENIS PEGADA MARINHO 170502G2
[cd_marca] => 70
[cd_cor] => 22
[cd_tamanho] => 25
[peso_liquido] => 0.700000
[peso_bruto] => 0.700000
[altura] => 12.000000
[largura] => 21.000000
[profundidade] => 32.000000
[cubagem] => 0.00810000
[vl_venda] => 140.90
[qt_estoque] => 1.00
[ds_categoria] => SAPATENIS
[ds_cor] => MARINHO
[ds_tamanho] => 43
)
(
[cd_produto] => 1
[ds_produto] => SAPATENIS PEGADA
[ds_longa] => SAPATENIS PEGADA MARINHO 170502G2
[cd_marca] => 70
[cd_cor] => 22
[cd_tamanho] => 26
[peso_liquido] => 0.700000
[peso_bruto] => 0.700000
[altura] => 12.000000
[largura] => 21.000000
[profundidade] => 32.000000
[cubagem] => 0.00810000
[vl_venda] => 140.90
[qt_estoque] => 2.00
[ds_categoria] => SAPATENIS
[ds_cor] => MARINHO
[ds_tamanho] => 44
)
(
[cd_produto] => 1
[ds_produto] => SAPATENIS PEGADA
[ds_longa] => SAPATENIS PEGADA MARINHO 170502G2
[cd_marca] => 70
[cd_cor] => 22
[cd_tamanho] => 27
[peso_liquido] => 0.700000
[peso_bruto] => 0.700000
[altura] => 12.000000
[largura] => 21.000000
[profundidade] => 32.000000
[cubagem] => 0.00810000
[vl_venda] => 140.90
[qt_estoque] => 5.00
[ds_categoria] => SAPATENIS
[ds_cor] => MARINHO
[ds_tamanho] => 45
)
Em cada chave, a descrição é a mesma, o valor também, mas alguns itens, como qt_estoque, ds_categoria, ds_cor e ds_tamanho, são diferentes.
Eu precisaria agrupar tudo em um único array, quando a ds_longa for igual.
Segue o script:
$Select = new Select;
$Select->FullSelect('SELECT * FROM produto LEFT OUTER JOIN produto_categoria ON produto.cd_produto = produto_categoria.cd_produto LEFT OUTER JOIN categoria ON produto_categoria.cd_categoria = categoria.cd_categoria LEFT OUTER JOIN cor ON cor.cd_cor = produto.cd_cor LEFT OUTER JOIN tamanho ON tamanho.cd_tamanho = produto.cd_tamanho');
if ($Select->getResult()):
$Products = $Select->getResult();
foreach ($Products as $Product):
print_r($Product);
endforeach;
endif;
O que podem me ajudar?
Desde já, muito obrigado!
Segue:
<?php
/*
#Exemplos criados
SAPATENIS PEGADA MARINHO 170502G2
SAPATENIS PEGADA LARANJA 170502G2
SAPATENIS PEGADA ROSA 170502G2
*/
$produtos = [
[
'cd_produto' => '1',
'ds_produto' => 'SAPATENIS PEGADA',
'ds_longa' => 'SAPATENIS PEGADA MARINHO 170502G2',
'cd_marca' => '70',
'cd_cor' => '22',
'cd_tamanho' => '25',
'peso_liquido' => '0.700000',
'peso_bruto' => '0.700000',
'altura' => '12.000000',
'largura' => '21.000000',
'profundidade' => '32.000000',
'cubagem' => '0.00810000',
'vl_venda' => '140.90',
'qt_estoque' => '1.00',
'ds_categoria' => 'SAPATENIS',
'ds_cor' => 'MARINHO',
'ds_tamanho' => '43'
],
[
'cd_produto' => '1',
'ds_produto' => 'SAPATENIS PEGADA',
'ds_longa' => 'SAPATENIS PEGADA MARINHO 170502G2',
'cd_marca' => '70',
'cd_cor' => '22',
'cd_tamanho' => '26',
'peso_liquido' => '0.700000',
'peso_bruto' => '0.700000',
'altura' => '12.000000',
'largura' => '21.000000',
'profundidade' => '32.000000',
'cubagem' => '0.00810000',
'vl_venda' => '140.90',
'qt_estoque' => '1.00',
'ds_categoria' => 'SAPATENIS',
'ds_cor' => 'MARINHO',
'ds_tamanho' => '44'
],
[
'cd_produto' => '1',
'ds_produto' => 'SAPATENIS PEGADA',
'ds_longa' => 'SAPATENIS PEGADA MARINHO 170502G2',
'cd_marca' => '70',
'cd_cor' => '22',
'cd_tamanho' => '27',
'peso_liquido' => '0.700000',
'peso_bruto' => '0.700000',
'altura' => '12.000000',
'largura' => '21.000000',
'profundidade' => '32.000000',
'cubagem' => '0.00810000',
'vl_venda' => '140.90',
'qt_estoque' => '1.00',
'ds_categoria' => 'SAPATENIS',
'ds_cor' => 'MARINHO',
'ds_tamanho' => '45',
],
[
'cd_produto' => '1',
'ds_produto' => 'SAPATENIS PEGADA',
'ds_longa' => 'SAPATENIS PEGADA LARANJA 170502G2',
'cd_marca' => '70',
'cd_cor' => '22',
'cd_tamanho' => '27',
'peso_liquido' => '0.700000',
'peso_bruto' => '0.700000',
'altura' => '12.000000',
'largura' => '21.000000',
'profundidade' => '32.000000',
'cubagem' => '0.00810000',
'vl_venda' => '140.90',
'qt_estoque' => '1.00',
'ds_categoria' => 'SAPATENIS',
'ds_cor' => 'MARINHO',
'ds_tamanho' => '45',
],
[
'cd_produto' => '1',
'ds_produto' => 'SAPATENIS PEGADA',
'ds_longa' => 'SAPATENIS PEGADA LARANJA 170502G2',
'cd_marca' => '90',
'cd_cor' => '22',
'cd_tamanho' => '21',
'peso_liquido' => '0.700000',
'peso_bruto' => '0.700000',
'altura' => '12.000000',
'largura' => '21.000000',
'profundidade' => '32.000000',
'cubagem' => '0.00810000',
'vl_venda' => '140.90',
'qt_estoque' => '1.00',
'ds_categoria' => 'SAPATENIS',
'ds_cor' => 'MARINHO',
'ds_tamanho' => '45',
],
[
'cd_produto' => '1',
'ds_produto' => 'SAPATENIS PEGADA',
'ds_longa' => 'SAPATENIS PEGADA ROSA 170502G2',
'cd_marca' => '70',
'cd_cor' => '22',
'cd_tamanho' => '27',
'peso_liquido' => '0.700000',
'peso_bruto' => '0.700000',
'altura' => '12.000000',
'largura' => '21.000000',
'profundidade' => '32.000000',
'cubagem' => '0.00810000',
'vl_venda' => '140.90',
'qt_estoque' => '1.00',
'ds_categoria' => 'SAPATENIS',
'ds_cor' => 'MARINHO',
'ds_tamanho' => '45',
]
];
$saida = []; // array vazia para tratamento do parâmetro ds_longa
} // foreach
// saida final