我有一个Array $ testes,它接收了两个数组$ variavel1和$ variavel2。然后我设置:
$this->set('testes', $testes)
查看我如何从$variavel1
和$variavel2
获取值?
我试过了$testes['$variavel1']['field']
,但我得到了Undefined Index $ variavel1
实际例子:
Array ( [0] => Array ( [ProcuraProdutoPedOnline] => Array ( [cd_familia] => 3 [ds_familia] => ACESSORIOS ) ) [1] => Array ( [ProcuraProdutoPedOnline] => Array ( [cd_familia] => 1 [ds_familia] => CALCADOS ) )
和
Array ( [0] => Array ( [VwEstPedOnline] => Array ( [cd_seq_pedido] => 2034 ) ) [1] => Array ( [VwEstPedOnline] => Array ( [cd_seq_pedido] => 2038 ) )
我正在设置$testes
,$testes = array($variavel1, $variavel2);
解释我的问题的图片:
答案 0 :(得分:3)
我认为你首先需要知道数组结构。将其添加到您的视图中,您将获得一个列表:
echo '<pre>';
print_r($testes);
echo '</pre>';
如果结果为空,问题可能出在将$ variavel1和$ variavel2添加到变量$ testes ...
的地方编辑2:通过示例数组:
// Result should be 2034
echo $testes['0']['0']['VwEstPedOnline']['cd_seq_pedido'];
编辑3 在本帖子的评论中回答您的问题:
我仍然不明白$ variavel1和$ variavel2是如何关联的。如果没有连接,则无需将它们合并到一个数组中。你可以在另一个foreach中使用一个foreach:
在您的控制器中:
$familias = $this->ProcuraProdutoPedOnline->find('all', array(
'fields' => array('cd_familia', 'ds_familia'),
'order' => 'cd_familia'));
$this->set('familias', $familias);
$cdSeqPeds = $this->VwEstPedOnline->find('all', array(
'fields' => 'cd_seq_pedido',
'order' => 'cd_seq_pedido'));
$this->set('cdSeqPeds', $cdSeqPeds);
在你看来:
foreach ( $familias as $var1 ) {
echo '<p>'.$var1['ProcuraProdutoPedOnline']['ds_familia'].':</p>';
echo '<ul>';
foreach ( $cdSeqPeds as $var2 ) {
echo '<li>'.$var2['VwEstPedOnline']['cd_seq_pedido'].'</li>';
}
echo '</ul>';
}
结果应该是这样的:
ACESSORIOS:
· 2034
· 2038
CALCADOS:
· 2034
· 2038
如果这不能解答您的问题,请举例说明(带有英文变量名称)您想要获得的内容以及这两个表如何连接/关联...