2017-01-24 42 views
0

這是代碼,我想設置條件獲得Marks。該條件將檢查獲得的標記是否具有賦值。如何設置ZF2中MySQL數據庫表的特定屬性的條件?

$qb->select(array(
     "academic.studentAcademicId as studentAcademicId", 
     "academic.descriptions as descriptions", 
     "student.name as studentName", 
     "student.studentId as studentId", 
     "class.name as className", 
     "session.name as sessionName", 
     ***"SUM(marks.marksObtained) as marksObtained",*** 
    )) 
     ->from('Application\Entity\StudentAcademics','academic') 
     ->leftJoin('academic.class','class') 
     ->leftJoin('academic.marks','marks') 
     ->leftJoin('academic.student','student') 
     ->leftJoin('academic.session','session') 
     ->where('academic.student = :student') 
     ->setParameter('student',$studentId)->groupBy('studentAcademicId'); 

因此,如何把這樣檢查出來,如果obtainedMarks攜帶價值與否的條件..!

回答

1

在Zendframework2,所有查詢數據被分配給數組變量例如$數據

$data = $qb->getQuery()->getScalarResult(); 

並返回到誰調用該控制器即

return new ViewModel(array(
       'data' => $data, 
      ) 

要檢查一個特定的attrib尤特在查詢中帶有一個值,或不是通過foreach循環在調用該控制器例如

<?php foreach ($this->data as $item): ?> 
<tr> 
    <td> 
     <?php if(isset($item['marksObtained']) && $item['marksObtained'] > 0){?> 
      <a href="<?=$this->url('marks/details', array('action'=>'index', 'id'=>$item['studentAcademicId']))?>"> 
       <?php echo $item['marksObtained']; ?></a> 
     <?php }else{ ?> 
      <a href="<?=$this->url('marks/details', array('action'=>'add', 'id'=>$item['studentAcademicId']))?>"> 
       Add Marks</a> 
     <?php }?> 
    </td> 
</tr> 

如所看到的視圖,以查看時,如果條件被檢查出的obtainedMarks值來自data數組變量。

相關問題