2015-01-18 4 views
0

Я пытаюсь использовать реализацию PHP усов, чтобы встроить некоторое содержимое HTML в шаблоне так:Усы PHP Поместите шаблон в шаблоне

[mytemplate begin] 
    [html content] 
[mytemplate end] 

Мой HTML содержание в HTML файл и когда Я стараюсь делает его у меня есть ошибка:

echo $template->render(array('content' => file_get_contents('content.html'))); 

Вот ошибка:

Fatal error: Maximum function nesting level of '100' reached, aborting! in C:\wamp\www\resume\application\mustache\src\Mustache\Engine.php on line 257

Как я могу вставить его как ХТ мл?

section.mustache файл (я удалил огромная часть HTML кода, есть только существенный)

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>    
    </head> 
    <body> 
     <!-- CONTENT --> 
     <div class="container"> 
      {{> section}} 
     </div> 
    </body> 
</html> 

И файл content.html (Учтите, что есть в двух других <section> с точно такой же количество кода)

<div class="section"> 
    <!-- Icon Section --> 
    <div class="row"> 
     <div class="col s12 m8 offset-m2 l8 offset-l2"> 
      <section id="sports" class="section scrollspy"> 
       <h1>Sports</h1> 
       <div class="card"> 
        <div class="card-image waves-effect waves-block waves-light"> 
         <img src="media/images/climbing.jpg"> 
        </div> 
        <div class="card-content"> 
         <span class="card-title activator grey-text text-darken-4">Escalade<i class="mdi-navigation-more-vert right"></i></span> 
        </div> 
        <div class="card-reveal z-depth-3"> 
         <span class="card-title grey-text text-darken-4"><h4>Escalade</h4><i class="mdi-navigation-close right"></i></span> 
         <p class="flow-text">Here is some more information about this product that is only revealed once clicked on. </p> 
        </div> 
       </div> 
       <div class="card"> 
        <div class="card-image waves-effect waves-block waves-light"> 
         <img src="media/images/snowboard.jpg"> 
        </div> 
        <div class="card-content"> 
         <span class="card-title activator grey-text text-darken-4">Snowboard<i class="mdi-navigation-more-vert right"></i></span> 
        </div> 
        <div class="card-reveal"> 
         <span class="card-title grey-text text-darken-4"><h4>Snowboard</h4><i class="mdi-navigation-close right"></i></span> 
         <p class="flow-text">Here is some more information about this product that is only revealed once clicked on.</p> 
        </div> 
       </div> 
      </section> 
     </div> 
     <div class="col hide-on-small-only s12 m2 l1"> 
      <div style="height: 1px;"> 
       <ul class="section table-of-contents pinned" style="top: 0px;"> 
        <li><a href="#sports" class="">Sports</a></li> 
        </ul> 
      </div> 
     </div> 
    </div> 
</div> 
+0

Вы разделили бы шаблон усы и 'content.html'? – mudasobwa

+0

Конечно, просто сделал это. Это замечательный полный код, я просто поставлю необходимое – Carvallegro

ответ

2

Вы немного потеряны в назыках. Усы собираются угадать, какой шаблон должен быть включен в его имя. В этой связи

{{> section}} 

содержит section.mustache. Поскольку он появляется в вашем section.mustache, двигатель пытается рекурсивно вставить его в себя. Это, по-видимому, приводит к бесконечному циклу, который заканчивается на уровне вложения 100 с полученной вами ошибкой.

Вы должны переименовать content.html в content.mustache и включаете в себя содержание:

{{> content}} 

Надеется, что это помогает.

+0

Это отлично работает! спасибо – Carvallegro

Смежные вопросы