我想从另一个控制器加载一个函数。这是我的结构:
- modules
--orderpages
---controllers
----WebshopCore.php
----WebshopController.php
调用WebshopController.php中的我的函数insertItemInCart。但是当我想从另一个控制器执行一个函数时它会崩溃。
class WebshopController extends MX_Controller {
public function __construct() {
parent::__construct();
$this->load->module('orderPages/WebshopCore');
}
function insertItemInCart(){
$partId = $this->input->post('partId');
$quantity = $this->input->post('quantity');
$output = $this->WebshopCore->getPickLocations($partId,$quantity);
}
}
我的网上商店核心:
class WebshopCore extends MX_Controller {
public function __construct() {
parent::__construct();
}
public function getPickLocations($partId,$amount){
$result = "test";
return $result;
}
}
出了什么问题?我不明白
解决方案:
$output = modules::load('orderPages/WebshopCore/')->getPickLocations($partId,$quantity);
答案 0 :(得分:0)
在这种情况下你应该写一个库。
在应用程序/库中创建Cart.php(或任何你想要的)
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Cart
{
protected $ci;
public function __construct()
{
$this->ci =& get_instance();
}
public function getPickLocations($partId, $qty)
{
//Your stuff
}
}
然后在你的控制器中:
$this->load->library("cart");
$data = $this->cart->getPickLocations($this->input->post('partId'), $this->input->post('quantity'));