2017-01-21 99 views
0
public function showcart() { 
$showcartdata = array(); 
$showcartdata['showcart'] = $this->ShowcartModel->showcart_mod(); 

$this->load->view('templates/header'); 
$this->load->view('showcart_view.php',$showcartdata); 
$this->load->view('templates/footer'); 
} 

public function place_order() { 
$this->load->view('templates/header'); 
$this->load->view('placeorder_onsubmit.php',$showcartdata); 
$this->load->view('templates/footer'); 
} 

我已經找遍了所有的方法來共享第一個方法「$ showcartdata ['showcart']」中的變量與下面的方法將用於查看文件。我試圖使用全局變量但徒勞無功。有沒有什麼聰明的方法來完成這項任務。非常感謝您的幫助和時間。如何在codeigniter中的函數之間共享一個變量

回答

0

在控制器的constructor中定義變量,如下所示。然後可以從所有控制器的功能訪問它。

public function __construct() 
{ 
    parent::__construct(); 
    $showcartdata = array(); 
    $showcartdata['showcart'] = $this->ShowcartModel->showcart_mod(); 
} 
public function showcart() { 
$this->load->view('templates/header'); 
$this->load->view('showcart_view.php',$showcartdata); 
$this->load->view('templates/footer'); 
} 

public function place_order() { 
$this->load->view('templates/header'); 
$this->load->view('placeorder_onsubmit.php',$showcartdata); 
$this->load->view('templates/footer'); 
} 
+0

謝謝Himat。在我閱讀你的評論之前,我做了你的建議。僅僅是感謝的話是不夠的。好日子 – user7321290

+0

@ user7321290歡迎隨時投票並接受答案,如果有幫助。 –

0

的一種方式做到這一點是使用GLOBALS

$_GLOBALS['global_var'] = 'Some Shareable Data'; 

function func1() 
{ 
    $x = $_GLOBALS['global_var']; 
    //function codes 
} 

另一種方法是使用環境變量
瞭解詳情,請訪問thisthis

此外,如果值是靜態的,你可以定義CONSTANTS

define('MY_CONST', 'static data'); 

function func1() 
{ 
    $x = MY_CONST; 
    function codes 
} 
+0

非常感謝Hossein。 – user7321290

相關問題