在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/PHP/ PHP MVC框架里如何使用$GLOBALS

PHP MVC框架里如何使用$GLOBALS

直接看網(wǎng)上的代碼(代碼正確的):
圖片描述

但是這段代碼要放到mvc框架里面,應(yīng)該如何使用,我寫了如下代碼(以ci框架為例):

class Welcome extends CI_Controller
{
    public $name = 'TOM';
    public function index()
    {
        echo "myname is " . $GLOBALS['name'] . "<br>";
    }
}

結(jié)果報(bào)錯(cuò):Undefined index: name

平常開發(fā)mvc框架一定要和類打交道的,不像圖片里的這么簡單,在類里面應(yīng)該如何使用$GLOBALS????
回答
編輯回答
呆萌傻

我也在使用CI也就是CodeIgniter開發(fā)時(shí)遇到相關(guān)問題,但是我沒有用全局變量的方式去解決,我個(gè)人也是不提倡在MVC框架里面使用全局變量,全局變量容易被代碼的各個(gè)部分訪問和修改,產(chǎn)生太多的不確定性,而且變量一般封裝在類當(dāng)中,不應(yīng)該在類外被訪問

1、將你需要的全局變量以配置變量的方式寫入config.php中

$config['name']= 'TOM';

2、在需要引用該變量時(shí)

$name = $this->config->item('name');
echo $name;
// Tom

以上方法參考CI的配置類,這個(gè)方法使用方便,而且全局生效,但是缺點(diǎn)也就是如果你需要設(shè)置非常多的變量,或者是從數(shù)據(jù)庫讀取的變量,那么這個(gè)方法就行不通

2017年12月7日 18:29