2016-06-29 79 views
0

我有一個樹枝模板這些行:細枝未通過一個可選參數的現場環境

{% for line in order.getItems() %} 
    {% set os = line.option.getOverstock(true)|first %} 

這是指這種方法:

public function getOverstock($getQtyOrdering = false) { 
     if ($getQtyOrdering === false) { 
      return $this->overstock; 
     } 

     //sort the collection by the quantity field before returning 
     $iterator = $this->overstock->getIterator(); 
     $iterator->uasort(function ($a, $b) { 
      return ($a->getQty() < $b->getQty()) ? 1 : -1; 
     }); 
     $sortResult = new \Doctrine\Common\Collections\ArrayCollection(iterator_to_array($iterator)); 
     return $sortResult; 

    } 

在這工作完美我的開發環境,但是在生活中,參數不被傳遞給方法。我已經檢查過對方和我們的存儲庫的實時和開發副本 - 一切看起來都很好。

我該如何調試這種情況?

(我在硅石框架內工作)

回答

2

您可以使用轉儲功能http://twig.sensiolabs.org/doc/functions/dump.html輸出這個變量。

或者通過添加symfony的包symfony/var-dumper

composer require symfony/var-dumper 

添加轉儲功能枝杈

$app->extend('twig', function ($twig) use ($app, $request) { 
    $twig->addFunction('dump', new \Twig_SimpleFunction('dump', '\dump')); 

    return $twig; 
}); 

和輸出這個變量在模板

{% for line in order.getItems() %} 
    {{ dump(line.option.getOverstock(true)|first) }} 
    {{ dump(line.option.getOverstock(true)) }} 
    {{ dump(line) }} 
    {% set os = line.option.getOverstock(true)|first %}