array tridimensional dinâmico
Olá pessoal, estou com um probleminha aqui, preciso montar o seguinte array que acredito q seja tridimensional
$m = array( "Relogio" => array("Fornecedor" => "RENATO MUNIZ", "Valor" => "34.00"),
=> array("Fornecedor" => "CLEBER" , "Valor" => "54.00"),
"Canela" => array("Fornecedor" => "JORDAO PEREZ", "Valor" => "45.00"),
"Monitor" => array("Fornecedor" => "MERCIA MARIA", "Valor" => "27.00"),
=> array("Fornecedor" => "PEDRO" , "Valor" => "17.00")
)
sei que assim é possivel!!
$m = array("Fulano" => array("rg" => "00.000.000-1", "cpf" => "000.000.000-01"),
"Ciclano" => array("rg" => "10.100.100-X", "cpf" => "100.100.100-01"),
"Beltrano" => array("rg" => "11.111.111-1", "cpf" => "111.111.111-01"));
porem só tem um registro por matriz (fulano, clicano...), eu gostaria de adicionar 2,3,4,5... registros por
matriz principal do array!!
Observe que para o produto relogio eu tenho 2 fornecedores Renato E Cleber, o produto MONITOR da mesma forma 2 fonecedores.
a primeira bronca seria montar o array dessa forma citado.
a segunda bronca seria montar ele dinamicamente, dependendo do retorno da consulta no DB que já esta pronta,
segue a consulta:
PRODUTO------------------ VALOR--------------FORNECEDOR---------
----------------------------------------------------------------
Caixa de Som ------------ 45.00--------------Avip Multimídia
Monitor 17---------------270.00--------------Nagem Informática
Nintendo 3ds-------------175.00--------------Info Box
Nintendo 3ds-------------180.00--------------Nagem Informática
TV 32-------------------1320.00--------------Magazine Novo Lar
Zend Framework e DOJO-----87.00--------------Livraria Cultura
observe tbem que a tabela está ordenada por nome do produto para poder unir as repetições do mesmo produto que no caso é o (Nintendo 3ds) esse produto será a matriz do array e os fornecedores (Infobox e nagem) serão os registros:
no caso então:
$m = array( "Nitendo 3ds" => array("Fornecedor" => "INFOBOX" , "Valor" => "175.00"),
=> array("Fornecedor" => "NAGEM" , "Valor" => "180.00"),
"Caixa de Som" => array("Fornecedor" => "AVIP MULT" , "Valor" => "45.00"),
"Monitor 17" => array("Fornecedor" => "NAGEM" , "Valor" => "270.00")
)
1 pra vários!!!!
como eu montaria o array dando um foreach na tabela???
a lógica poderia ser nesse caminho::?
$nome_produto = '';
foreach ($rows as $produtos)
{
if($nome_produto != $produtos['nome'])
{
$nome_produto = $produtos['nome']);
// Montar Matriz do array!!
$m = array( $nome_produto => array("Fornecedor" => $produtos['nomefornece'], "Valor" => $produtos['valor']),
}else {
// mesmo produto adiciono um registro no array
$m = array( $nome_produto => array("Fornecedor" => $produtos['nomefornece'], "Valor" =>$produtos['valor']),
}
}
o problema ai é que nao consegui concatenar uma string pra simular a criação do array numa classe ZEND que extend
Zend_Controller_Action
exemplo:
for{
se primeiro
$array = $array .= '=>MATRIZ ...
SE NAO
$array = $array .= '=>REGISTRO NO ARRAY ...
END
tem algum jeito?? :D
Espero ter sido claro e objetivo :D/
e já agradeço a atenção de todos..!!!
obg.
Discussão (2)
Carregando comentários...