en mis controladores actualmente tengo que crear una instancia del modelo en cada metodo que tengo que usar por ejemplo:
Código PHP:
y anda todo bienVer original
class ejemploController extends Controller{ public function index(){ $modelo = new ClaseModelo(); $modelo->llamoaunmetodo(); } public function otroMetodo(){ $modelo = new ClaseModelo(); $modelo->llamoaotrometodo(); }
Bien en mi clase controller tengo esto:
Código PHP:
Ver original
//Incluimos los modelos $this->Utilidades->recursiveInclude($config->get('modelsFolder'));
el codigo de recursiveInclue es :
Código PHP:
que lo que hace es un include de todas las clases de un directorio este caso la carpeta modelos.Ver original
/** * funcion para cargar recursivamente clases. * * @access public * @param string $path */ public function recursiveInclude($path) { foreach($dir as $k => $v) if ( !(is_dir($path.$v)) && ( file_exists($path.$v) ) && ($v != ".") && ($v != "..") && (strtolower(end(explode(".", $v))) == 'php') ) include_once($path.$v); recursiveInclude($path.$v."/"); } }
Bien lo que he intentado hacer (sin exito) es esto:
Código PHP:
Ver original
class ejemploController extends Controller{ private $modelo; public function __construct(){ $this->modelo = new ClaseModelo(); } public function index(){ $this->modelo->metodo; } }
pero cuando hago esto me sale este error:
Fatal error: Class 'ClaseModelo' not found in D:\xampp\htdocs\ampa\admin\controladores\ejemplo\e jemploController.php on line 14
la linea 14 es:
Código PHP:
Ver original
$this->modelo = new ClaseModelo();
como puedo instanciar un modelo y que se pueda usar en todos los metodos de un controlador?
desde ya muchas gracias