Codeigniter ve çoklu kalıtım

0 Cevap php

Ben orta büyüklükteki bir uygulamanın ön ucunu oluşturmak için CodeIgniter kullanarak oldum ve bir sorun halinde çalıştırmak - Ben olabileceğini düşünüyorum - PHP miras. İşte yapmak çalışıyorum budur:

MVC mimarisi aşağıda, ben modelleri arasında bir sürü kod çoğaltarak olduğu bulundu, ve diğer modeller miras hangi ortak bir modeli oluşturmak için karar verdi. Basit yeterli. Ancak, şimdi, ben ortak Model sınıfında tanımlanan bazı fonksiyonları ile ilgili sorunları alıyorum.

İşte ben ne yapıyorum bir kroki olduğunu:

<?php

/**
 * Common Model
 *
 */
 class DeviceModel extends Model {

 function DeviceModel() {
     parent::Model();     
 }

 public function getDeviceId($d) { // this is just example code. }

 public function getDeviceInfo($id) {    

    $selectStmt = "SELECT BLAH, BLAH2 FROM YADDAYADDA...";

    $query = $this->db->query($selectStmt, array($id));

    if ($query->num_rows() > 0) {
        return $query->result();
    }
  }
}

?>

İşte alt sınıfıdır:

<?php
require_once('devicemodel.php');
class ManageModel extends DeviceModel {

    function ManageModel() {
        parent::DeviceModel();
    }
    function getDropDownList($parkId,$tableName,$userclass) {
        $arrCmds = array();
        $arrHtml = array();

        $deviceInfo = parent::getDeviceInfo($parkId);
        $did = parent::getDeviceId($deviceInfo);

        foreach ($deviceInfo as $device) {
            $cmds = $this->getDeviceCommands($device->dtype,$tableName,$userclass);
            array_push($arrCmds,$cmds);
        }

        //
        // **After the refactor, I am receiving Undefined Offsets for this loop.**
        //
        for ($i=0; $i<sizeof($arrCmds); $i++) {
            $html = $this->generateHtml($arrCmds[$i],$did[$i]);
            array_push($arrHtml,$html);
        }

        return $arrHtml;
    }        

CodeIgniter birden devralmayı kullanarak bir sorun var mı? PHP ve CodeIgniter için oldukça yeni.

Seyir için teşekkürler.

0 Cevap