9

我对 php 比较陌生,我整天都在努力让它工作。我有一个多个数组,并希望以特定格式和分组回显每个数组。所以我浏览了stackoverflow并找到了这个帮助:

<? foreach(array_chunk($projetos, 6) as $curta ) { ?>


        <li style='display:block'>


                     <div class="film"> <?php echo $curta[0]['titulo']; ?></div>
                     <div class="film"> <?php echo $curta[1]['titulo']; ?></div>
                     <div class="film"> <?php echo $curta[2]['titulo']; ?></div>
                     <div class="film"> <?php echo $curta[3]['titulo']; ?></div>
                     <div class="film"> <?php echo $curta[4]['titulo']; ?></div>
                     <div class="film"> <?php echo $curta[5]['titulo']; ?></div>


             </li> 

      <? }; ?>

这会返回我想要的,但数组的最后一项不会填充到 6 并创建 2 个额外的空 div 并弄乱设计。

这是我拥有的数组的一个示例:

<?php
 $projetos = array ( 

            "ugm" => array (
                    "id" => "ugm",
                    "titulo" => "Una Guerra Más",
                    "video" => "imagem",
                    "videoid" => "",
                    "height" => "$video_height_wide",
                    "sinopse" => "Um soldado moribundo deseja enviar sua última carta. Curta indisponível por exibição em festivais. Feito em parceria com a Universidad del Cine e LightBox Studios.",
                    "elenco" => "Ignacio J. Durruty - Rodrigo Soler - Ulisses Levanavicius - Aron Matschulat Aguiar",
                    "idioma" => "Inglês - Português",
                    "camera" => "Sony EX1",
                    "formato" => "HD",
                    "duracao" => "9'55''",
                    "ano" => "2012",
                    "tipo" => "Curta",
                    "credito" => "Direção - Edição - Produção - Roteiro",
                                 ), (...)

我希望能够只编辑一个 div 将成为其他人的主人......并使用我在另一个问题上读过的内爆,但没有工作来回显我想要的字符串......

请有人帮忙吗?提前致谢!

4

4 回答 4

26
<?php foreach(array_chunk($projetos, 6) as $curta ) { ?>
    <li style='display:block'>
       <?php foreach($curta as $detail) { ?>
                 <div class="film"> <?php echo $detail['titulo']; ?></div>
       <?php } ?>
    </li> 
<? }; ?>
于 2012-09-16T15:39:05.450 回答
0

为什么不使用循环来迭代$curta呢?

<? foreach(array_chunk($projetos, 6) as $curta ) { ?>
  <li style='display:block'>
    <? foreach($curta as $c) { ?>
      <div class="film"><? echo $c['titulo']; ?></div>
    <? } ?>
  </li> 
<? }; ?>
于 2012-09-16T15:41:29.747 回答
0

但数组的最后一项最多不能填满 6

由于大多数情况下都会发生这种情况,因此您不能假设每个块都有 6 个元素,因此您必须遍历该块:

<? foreach(array_chunk($projetos, 6) as $curta ) { ?>

<li style='display:block'>

<? foreach($curta as $c) { ?>       
    <div class="film"> <?php echo $c['ugm']['titulo']; ?></div>
<? }; ?>

</li> 

<? }; ?>

这样你肯定不会显示空的 div。

于 2012-09-16T15:42:32.757 回答
-1

这行:

<div class="film"> <?php echo $curta[0]['titulo']; ?></div>

应该是这样的:

<div class="film"> <?php echo $curta[0]['ugm']['titulo']; ?></div>

那应该做你想做的事。

于 2012-09-16T15:38:18.330 回答