2016-12-13 72 views
-1

傢伙外部JS,我試圖用get_instance函數來獲得實例,但我面臨着一些問題,它總是拋出我這個錯誤與PHP擴展(代碼點火器)

PHP Fatal error: Uncaught Error: Call to undefined function get_instance()

我有一個名爲english.php,它有下面的代碼:

<?php 
$ci =& get_instance(); 
//$ci->load->helper('language'); 

$CI->load->helper('language'); 
header('Content-Type: text/javascript'); 

?> 
<!--alert("Hello world");--> 
var messages = { 
    CALENDAR_CREATE: "<?php echo lang('calendar_reminder_creation'); ?>", 
    CALENDAR_EDIT: "<?php echo lang('calendar_reminder_edit'); ?>", 
    CALENDAR_DELETE: "<?php echo lang('calendar_reminder_delete'); ?>" 
}; 

,我,包括像這樣

<script src="<?php echo base_url() ?>assets/scripts/dynamic/english.php" type="text/javascript"></script> 

首先我並沒有加載任何幫助或得到任何實例在上面,因爲我有它是CI_Controller加載的語言助手,但它開始給我的錯誤郎沒有定義,因此試圖用get_instance功能,但畢竟是給我上面的錯誤。

誰能告訴我它是什麼,我做錯了?

+1

你不能得到CI實例的應用範圍之外。您的english.php正在通過http請求獲取,因此它不在範圍之內。取而代之的是,你可以在你的視圖中創建JS常量並將其分配給'''messages'''對象。 – kishor10d

+0

https://www.codeigniter.com/user_guide/general/ancillary_classes.html – user4419336

回答

0

改變了這一行

$ci = &get_instance(); 
+0

這樣做,但也沒有工作 – Gardezi

+0

你能分享你english.php文件代碼。還有保存的地方,我沒有看到任何類名和__construct()函數。 – Kiran

0

試試吧..

<?php 
$CI =& get_instance(); 
//$ci->load->helper('language'); 

$this->CI->load->helper('language'); 
header('Content-Type: text/javascript'); 

?> 
<!--alert("Hello world");--> 
var messages = { 
    CALENDAR_CREATE: "<?php echo lang('calendar_reminder_creation'); ?>", 
    CALENDAR_EDIT: "<?php echo lang('calendar_reminder_edit'); ?>", 
    CALENDAR_DELETE: "<?php echo lang('calendar_reminder_delete'); ?>" 
}; 
+0

這也沒有幫助。它仍然拋出了同樣的錯誤' 調用未定義功能get_instance()' – Gardezi

+0

你可以在視圖文件本身這件事,你有什麼其他目的,把它寫在PHP文件,並考慮像JS進口嗎? – kishor10d