Ver Mensaje Individual
  #13 (permalink)  
Antiguo 17/07/2013, 07:35
Avatar de Italico76
Italico76
 
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 8 meses
Puntos: 292
Respuesta: Foreach Range

Código PHP:
Ver original
  1. <?php
  2. ...
  3. // Genero enlaces:
  4. foreach (range(1,5) $ n){
  5.      echo "<a href=\"link.php?numero=$n\">Pagina $n</a>";
  6. }
Código PHP:
Ver original
  1. // en Link.php  (otra pagina)
  2. <?php
  3. $enlace = (isset($_GET['numero'] ? $_GET['numero'] : null);
  4.  
  5. echo $enlace; // aca ya tienes el numero enviado

----------

OTRA SOLUCION... seria crear el "tipo rango" que pues puedes ir mejorando con agregados.. te muestro como funcionaria:

Código PHP:
Ver original
  1. <?php
  2. include "range_lib.php";
  3.  
  4. $rango = new Range(1,10);
  5.  
  6. foreach ($rango as $valor){
  7.     echo "$valor<br/>";
  8. }
  9.  
  10. // Salida: 1<br/>2<br/>3<br/>4<br/>5<br/>6<br/>7<br/>8<br/>9<br/>10<br/>
  11.  
  12. echo $rango;   // salida:  1 2 3 4 5 6 7 8 9 10
  13. echo str_replace (' ',' ,',$rango);    // salida:  1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,10


Código PHP:
Ver original
  1. <?php
  2. // Esta clase estaria en RANGE_LIB.PHP
  3.  
  4. Class Range implements Iterator {
  5.  
  6.     private $_arr = [];
  7.     private $_ini  = null;
  8.     private $_end  = null;
  9.     private $_step = null;
  10.  
  11.     public function __construct($a,$b,$step=null){        
  12.         $this->_ini  = $a;
  13.         $this->_end  = $b;
  14.         $this->_step = ($step == null ? 1 : $step);
  15.         $this->_arr  = range($this->_ini,$this->_end,$this->_step);
  16.     }
  17.  
  18.     public function getArray(){
  19.         return $this->_arr;
  20.     }
  21.  
  22.     public function __toString(){        
  23.         $out = null;
  24.  
  25.         foreach ($this->_arr as $val)
  26.             $out .= "$val ";
  27.      
  28.         return rtrim($out);
  29.            
  30.     }
  31.  
  32.     /* Implemento interface Iterator  */
  33.  
  34.     public function rewind()
  35.     {        
  36.         reset($this->_arr);
  37.     }
  38.  
  39.     public function current()
  40.     {
  41.         $elem = current($this->_arr);        
  42.         return $elem;
  43.     }
  44.  
  45.     public function next()
  46.     {
  47.         $elem = next($this->_arr);        
  48.         return $elem;
  49.     }
  50.      
  51.     public function key()
  52.     {    
  53.         $key = key($this->_arr);
  54.         return $key;
  55.     }
  56.  
  57.     public function valid()
  58.     {
  59.         $key = key($this->_arr);
  60.         $elem = ($key !== NULL && $key !== FALSE);        
  61.         return $elem;
  62.     }  
  63.  
  64. } // endClass
__________________
Salu2!

Última edición por Italico76; 17/07/2013 a las 14:07