西里尔语的树枝问题

时间:2018-10-05 17:00:17

标签: twig

我正在尝试使用包含我的母语字符的树枝模板并收到此错误

object(Twig_Error_Syntax)[173]
  private 'lineno' (Twig_Error) => int 1
  private 'name' (Twig_Error) => string 'sms' (length=3)
  private 'sourceCode' (Twig_Error) => string 'Привет, {{name}}' (length=22)
  protected 'message' => string 'Unexpected token "end of template" of value "" in "sms" at line 1.' (length=66)
  private 'string' (Exception) => string '' (length=0)
  protected 'code' => int 0
  protected 'file' => string '/var/www/bitrix/vendor/twig/twig/lib/Twig/ExpressionParser.php' (length=62)
  protected 'line' => int 201

但是,相同的代码对于拉丁字符也可以正常工作。

我使用的代码如下:

$loader = new Twig_Loader_Array(['sms' => $arTemplate['PROPERTY_SMS_VALUE']['TEXT'], 'mail' => $arTemplate['PROPERTY_EMAIL_VALUE']['TEXT']]);
$twig = new Twig_Environment($loader);

try {
    $sms_text = $twig->render('sms', ['name' => $_REQUEST[FIELD_NAME]]);

基本上,它从数据库中提取树枝并应用简单的渲染。我使用没有Symfony的树枝(仅安装了基本要求)

1 个答案:

答案 0 :(得分:0)

最好将tools.twig用于Bitrix CMS。

composer req maximaster/tools.twig

然后,您应该删除 template.php 并在组件文件夹中创建 template.twig 文件。

在文档中,您可以在树枝模板和模板bitrix variables的规则中找到inheritance