0
我正在創建一個Twig擴展並通過服務激活它。除了我試圖簡單地使用Twig擴展中的另一個類以外,一切都很好。無法在Symfony2 Twig擴展中重新聲明類
想法是實例化新類,然後根據需要使用它。實例化是一個問題,因爲它錯誤:
Error: Cannot redeclare class NewClass in .../Bundle/NewClass.php line 13
當然,它實例化它一次。這是爲什麼發生?
namespace Bundle\Twig;
use Bundle\NewClass;
class NewExtension extends \Twig_Extension
{
private $request;
private $new_class;
public function __construct($container) {
//get the Request object
$this->request = $container->get('request');
//instantiate new class
$this->new_class = new NewClass(); // this part triggers the error
}
///etc.
感謝大家好,唯一的事情是怎麼做的我通常在PHP中使用參數傳遞給新類:new NewClass($ param1,$ param2)等 - 所有參數都來自Request類。 – user2143356
您可以將請求發送到NewClass以獲取參數。我已經更新了我的答案。雖然看起來並不理想。你爲什麼需要在你的枝條延長的要求?那麼可能更有意義。 – qooplmao