2012-09-16 12 views
5

मैं php के लिए अपेक्षाकृत नया हूं और मैं इसे काम करने के लिए पूरे दिन कोशिश कर रहा हूं। मेरे पास एक से अधिक सरणी है और प्रत्येक को एक विशिष्ट प्रारूप में और समूहों में गूंजना चाहता हूं। तो मैं stackoverflow के माध्यम से चला और इस सहायता मिल गया है:php में array_chunk के साथ foreach और एकाधिक arrays

<? 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 अतिरिक्त खाली divs बनाता है और डिजाइन को खराब करता।

इस सरणी के एक भी उदाहरण है मेरे पास है:

<?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 है कि दूसरों के लिए मास्टर हो जाएगा ... संपादित करने में सक्षम होना चाहता हूँ और फटना मैंने का उपयोग कर एक और सवाल पर पढ़ा लेकिन मैंने जो तार चाहते थे उसे गूंजने के लिए काम नहीं किया ..

क्या कोई मदद करेगा? अग्रिम धन्यवाद!

+0

क्षमा करें दोस्तों, लेकिन मैं आपकी समस्या को समझ नहीं सकता ... यह मेरी गलती है..यदि आप विस्तृत हैं तो मैं आपको जितनी संभव हो सके मदद करूंगा। – Rajnish

उत्तर

10
<?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> 
<? }; ?> 
+0

धन्यवाद यूजीन! यह पूरी तरह से काम किया! ;) knittl वही काम किया और मैं इस कोड का उपयोग कर अब आप लोगों को प्रदान किया :) बहुत बहुत धन्यवाद! – Aron

0

यह लाइनों:

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

इस तरह होना चाहिए:

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

कि आप क्या चाहते हैं क्या करना चाहिए।

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> 
<? }; ?> 
+0

धन्यवाद knittl! यह पूरी तरह से काम किया;) – Aron

0

लेकिन सरणी के अंतिम आइटम does not को 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 प्रदर्शित नहीं कर सकते हैं।

संबंधित मुद्दे