2011-08-30 65 views
0
使用MVC的结果集抢额外的属性

我有以下结构:计划>项目>舞台如何在PHP

我的观点查看这些模型中的每个文件是非常标准的,你会看到类似的跟在视图文件中:

<?php foreach ($programs as $p):?> 
<p><?php echo $p->getName()?></p> 
<?php endforeach?> 

我的$ programs变量只是一个Program对象数组。

现在,作为一个例子,假设我有一个页面,它将列出其父项目和程序名称的阶段。我的SQL语句执行所需的连接,我的对象数组将包含程序和项目名称的属性。我在Stage模型中添加了2个方法:getProjectName()和getProgramName(),但是,我不确定这是否是正确的方法。如果我想在此页面上列出项目或程序的其他属性,那么我需要在舞台模型中制作一些额外的方法,我认为这些方法不属于此类。

任何人都可以提供任何见解如何最好地完成这种事情?谢谢。

回答

0

你会得到这样的一切领域 像这样

$programs = array(
    0 =>array(
    'name' => 'prog name 1', 
    'somefield' =>'some prog field 1', 
    'project' => array(
     0 =>array(
     'name' => 'proj name 1', 
     'somefield' =>'some proj field 1', 
     'stage' => array(
      0=>array(
      'name' =>'stage name 1', 
      'somefield' =>'some stage field 1', 
      ), 
      1=>array(
      'name' =>'stage name 2', 
      'somefield' =>'some stage field 2', 
      ) 
     ) 
    ), 
     1 =>array(
     'name' => 'proj name 2', 
     'somefield' =>'some proj field 2', 
     'stage' => array(
      0=>array(
      'name' =>'stage name 1', 
      'somefield' =>'some stage field 1', 
      ), 
      1=>array(
      'name' =>'stage name 2', 
      'somefield' =>'some stage field 2', 
      ) 
     ) 
    ) 
    ) 
) 
); 
阵列数据