2012-03-22 17 views
2

のindex.php

require_once('smarty/Smarty.class.php'); 
$Smarty = new Smarty(); 

function do_something() { 
    global $Smarty; 
     echo "where is smarty?" 

    var_dump($Smarty); 
    $ObjSmarty->assign("teams_list", $teams_list); 
} 
get_active_teams(); 

何もダンプしないとエラーが割り当て私は$ GLOBALS [ "Smartyの"]何をダンプしないとき...グローバルの

require_once('smarty/Smarty.class.php'); 
$Smarty = new Smarty(); 

function do_something() { 
    global $Smarty; 
     echo "where is smarty?" 

    var_dump($GLOBALS); 
    var_dump($GLOBALS["Smarty"]); 
} 
get_active_teams(); 

ダンプは、Smartyのを示します。どうしたの。

私には問題がありませんか?

宣言クラスを使用せずにPHP関数内でロードされたスマートオブジェクトに割り当てる方法を教えてください。

+0

最初の例では、$ Smartyと$ ObjSmartyと呼んでいます。これはタイプミスか実際にコード内にありますか? –

答えて

3

どこかdo_something関数を呼び出しましたか? おそらく、あなたはこれを行うことができます。

function do_something($Smarty) { 
    // ... Do something with smarty here... 
} 
do_something($Smarty); 
2

を非常に良いアイデアは、なぜ関数のパラメータとして$ Smartyのを渡していないされていないグローバル変数を使用していますか?

function foo($smarty) { 
    var_dump($smarty); 
} 

foo($smarty); 
関連する問題