0
它的posible獲取塊內所有可用的枝條塊名稱?怎麼樣?在運行時獲取所有可用的枝條塊名稱
它的posible獲取塊內所有可用的枝條塊名稱?怎麼樣?在運行時獲取所有可用的枝條塊名稱
你可以做到。任何編程語言或腳本語言工作流程的工作流程中有兩個主要部分,即lexing和編譯。在編譯部分,Twig構建令牌樹,然後將其編譯爲HTML(Twig internals)。
所有這些都在Twig_Environment類中調用,它在Symfony中用作服務。所以你可以做的是重寫Twig_Environment tokenize
方法並獲得你需要的所有令牌。然後您可以使用您自己的修改後的擴展名override the original service。
這就是你將如何返回所有的標記名稱。您可以根據自己的需要進行調整。如果您需要令牌樹本身,您也可以覆蓋render
和/或parse
方法,或者您可以編寫您自己可以從模板本身調用的更復雜的附加功能。可能性是無止境。請注意讓代碼與原始的Twig實現分開(使用覆蓋),以便更輕鬆地進行更新。