До сих пор мне удалось показать «последний файл» в моем виде ветки, и все они поверх контроллера, который появляется на моей странице в первой строке перед заголовком. Теперь мне нужно отобразить все в виде веточки.
Это мой код:
контроллер
public function frmyfilesAction(Request $request) { $session = $this->getRequest()->getSession(); $em = $this->getDoctrine()->getEntityManager(); $repository = $em->getRepository('redlabLabelBundle:Users');
if ($session->has('login'))
{
$login = $session->get('login');
$username = $login->getUsername();
$password = $login->getPassword();
$user = $repository->findOneBy(array('userName' => $username, 'password' => $password));
$dir = $user->getServer();
if ($dh = opendir($dir))
{
$store_array = array() ;
while (($file = readdir($dh)) !== false)
{
echo $file . "</br>";
$store_array = $file;
}
$mefil = $store_array;
}
closedir($dh);
return $this->render('redlabLabelBundle:Advert:frmyfiles.html.twig', array('mifil'=> $mefil,'name' => $user->getFirstName(),'fhost' => $user->getServer());
}
return $this->render('redlabLabelBundle:Advert:radiofr.html.twig'); }
вид веточки
{%block body %} <div class="container">
<h2>Ici sont stoqués tous tes fichiers {{name}}</h2></br></br> <h4>Mon Dossier {{fhost}}<h4> </br>
<a href="{{fhost}}{{mifil}}">{{mifil}} </a> </br></br></br> </br></br></br>
</div> <a href="{{path('redlab_platform_logout')}}">Déconnection</a></br></br></br></br>
{%endblock%}
—
Как мне вывести ВСЕ данные из цикла while в массив, чтобы я мог использовать их в представлении ветки?
Twig предназначен для визуализации представления, так как нет встроенной функции Twig для чтения имен файлов.
Вы должны получить имена файлов в вашем контроллере (или, что еще лучше, в службе), а затем отправить данные на ваше усмотрение.
И если вы действительно хотите использовать Twig, да, вам придется написать расширение Twig, но это очень, очень, очень плохая идея …
окончательное решение это сработало просто; просто замените веточку yiew следующим кодом:
{%block body %}
<div class="container">
<h2>Ici sont stoqués tous tes fichiers {{name}}</h2></br></br>
<h4>Mon Dossier {{fhost}}<h4>
</br>
{% for item in mifil %}
<li><a href="{{fhost}}{{item}}">{{item}} </a></li>
{% endfor %}
</br></br></br>
</br></br></br>
</div>
<a href="{{path('redlab_platform_logout')}}" >Déconnection</a></br></br></br></br>
{%endblock%}