login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[zf] arrays uitlezen (Opgelost)

Offline shibble - 16/09/2008 20:21 (laatste wijziging 16/09/2008 20:35)
Avatar van shibbleMySQL interesse Hallo ik zit met een probleem

ik heb in me controller het vogende staan:
  1. $this->view->blockActions = array(
  2. 'block_action' => array('block lopende projecten', 'block laatste nieuws'),
  3. 'block_controller' => array('index', 'index'),
  4. 'block_module' => array('projects', 'news')
  5. );


in mijn layout:
  1. <?php foreach($this->blockActions['block_action'] AS $bAction) : ?>
  2. <?php foreach($this->blockActions['block_controller'] AS $bController) : ?>
  3. <?php foreach($this->blockActions['block_module'] AS $bModule) : ?>
  4.  
  5. <?php echo 'Block Action: '.$bAction.'<br />' ?>
  6. <?php echo 'Block Controller: '.$bController.'<br />' ?>
  7. <?php echo 'Block module: '.$bMvalue.'<br /><br />' ?>
  8.  
  9.  
  10. <?php endforeach; ?>
  11. <?php endforeach; ?>
  12. <?php endforeach; ?>


en ik krijg het volgende als output:
  1. Block Action: block lopende projecten
  2. Block Controller: index
  3. Block module: projects
  4.  
  5. Block Action: block lopende projecten
  6. Block Controller: index
  7. Block module: news
  8.  
  9. Block Action: block lopende projecten
  10. Block Controller: index
  11. Block module: projects
  12.  
  13. Block Action: block lopende projecten
  14. Block Controller: index
  15. Block module: news
  16.  
  17. Block Action: block laatste nieuws
  18. Block Controller: index
  19. Block module: projects
  20.  
  21. Block Action: block laatste nieuws
  22. Block Controller: index
  23. Block module: news
  24.  
  25. Block Action: block laatste nieuws
  26. Block Controller: index
  27. Block module: projects
  28.  
  29. Block Action: block laatste nieuws
  30. Block Controller: index
  31. Block module: news


en dat klopt dus niet ik zou als output willen krijgen

  1. Block Action: block lopende projecten
  2. Block Controller: index
  3. Block Module: projects
  4.  
  5. Block Action: block laatste nieuws
  6. Block Controller: index
  7. Block Module: news


hoe kan ik dat oplossen?

2 antwoorden

Gesponsorde links
Offline Stijn - 16/09/2008 21:43
Avatar van Stijn PHP expert Je moet geen foreach gebruiken maar een for lus.

  1. for( $i = 0 ; $i < count($this->blockActions['block_action']) ; $i++) {
  2. echo "Action: " . $this->blockActions['block_action'][$i];
  3. echo "Controller: " . $this->blockActions['block_controller'][$i];
  4. echo "Module: " . $this->blockActions['block_module'][$i];
  5. }


Als je foreach wilt gebruik dan moest je array design er anders uitzien.

  1. $this->view->blockActions = array( array('action' => 'index' , 'controller' => 'index' , 'module' => '...') , .... );
Offline shibble - 16/09/2008 22:21
Avatar van shibble MySQL interesse dan was ik toch goed aan het kijken, nu weet ik dat ook weer dankuuuu ! gebruik de for lus btw nu !
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.218s