2013-02-20 116 views
0

我正在編寫一個PHP應用程序用於學校工作,我使用Twig模板引擎孤獨(沒有框架)。樹枝錯誤:警告:{closure}()的參數1缺失

我得到了一個文件,它在我的項目中初始化Twig,並在需要它的所有文件中使用它。

include_once('./Twig/lib/Twig/Autoloader.php'); 
Twig_Autoloader::register(); 
$loader = new Twig_Loader_Filesystem('./templates');  
$twig = new Twig_Environment($loader, array(
    'cache' => false, 
    'charset' => 'utf-8' 
)); 

我有一個小枝函數,它返回到我的靜態文件文件夾的路徑。但是,當我運行addFunction($my_function)我得到了下面的錯誤:

警告:缺少參數1 {關閉}()

我的嫩枝功能:

$url_for_static = new Twig_SimpleFunction('static_folder', function() { 
$static_folder = "./static" ; 
    return $static_folder ; 
}); 

$twig->addFunction($url_for_static); 

我知道這答案真的很晚,但我終於找到了解決我的問題。我的小枝函數聲明是錯誤的。 這爲我工作:

`

function blank_space($size=100) {  
    echo "<div class='grid-". $size ." hidden'> <span> hidden </span> </div>" ; 
} 
$twig->addFunction('blank_space', new Twig_Function_Function('blank_space')) ; 

`

回答

0

我從來沒有使用過的樹枝,但似乎關閉被調用的參數,但你沒有定義任何參數在你的關閉。試試這個:

$url_for_static = new Twig_SimpleFunction('static_folder', function ($arg) { 
    var_dump($arg); 
    $static_folder = "./static" ; 
    return $static_folder ; 
}); 
+0

@iamphinson請發表你的答案爲這個問題的答案。 48小時後,您可以接受這個最佳答案。這是處理這種事情的常見方式 – 2013-03-05 13:43:09

+0

好吧,@WouterJ :)我在嘗試,但在評論中包含代碼有點困難。我用的是''但它不工作 – phndiaye 2013-03-05 13:52:15

+0

@iamphinson正如我說,你不應該使用一個評論,但典型值在下面的框中的答案(點擊下面的「回答你的問題」按鈕) – 2013-03-05 13:53:24

0

我知道這個答案真的是遲,但我終於找到了解決我的問題。我的小枝函數聲明是錯誤的。

這爲我工作:

function blank_space($size=100) { 
    echo "<div class='grid-". $size ." hidden'> <span> hidden </span> </div>" ; 
} 

$twig->addFunction('blank_space', new Twig_Function_Function('blank_space')) ; 
相關問題