[英]Check if string has valid Twig syntax
很簡單,在Symfony2應用程序的服務類函數內部,我想檢查作為參數傳遞的給定字符串是否具有有效的Twig語法...
public function checkIfValidTwig($twigString)
{
$isValid = false;
$isValid = someWay->toCheckIf()->itIsValid($twigString);
return $isValid;
}
任何想法?
您可以使用Twig_Environment::tokenize()
,如果無法解析Twig代碼,則會拋出異常Twig_Error_Syntax
- http: Twig_Error_Syntax
class TwigValidator
{
/**
* @var \Twig_Environment
*/
private $twig;
/**
* @param \Twig_Environment $twig
*/
public function __construct(\Twig_Environment $twig)
{
$this->twig = $twig;
}
/**
* @param string $twigString
*
* @return boolean
*/
public function checkIfValidTwig($twigString)
{
try {
$this->twig->tokenize($twigString);
return true;
} catch (\Twig_Error_Syntax $e) {
return false;
}
}
}
您需要創建Constraint類,所幸的是,這里有針對您的問題描述的確切過程:
http://labs.octivi.com/validation-constraint-for-twig-template-syntax/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.