Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/10/2014, 22:33
Avatar de berkeleyPunk
berkeleyPunk
 
Fecha de Ingreso: febrero-2013
Ubicación: México :C
Mensajes: 565
Antigüedad: 11 años, 2 meses
Puntos: 22
Pregunta Si es el último índice de array, entonces...

Hola!

Intento crear unos breadcrumbs sencillos. Sé que el código final resultará poco elegante comparado con las clases PHP disponibles en la red, pero no quiero usar éstas porque deseo entrenar un poquito, .

El script debe devolver algo como: inicio » miga1 » miga2

Código PHP:
function breadcrumbs($migas) {
    
$m      explode('/'$migas);
    
$maximo count($m);
            
    for (
$i=0$i<$maximo$i++) {
        if ( empty(
$m[$i]) ) {
            echo 
"¡Error! No se han declarado los breadcrumbs<br />";
        }
        else {
            echo 
'<i>' $m[$i] . '</i><b> » </b>';
        }
    }
    
// echo $maximo-3;
}
breadcrumbs('musica/generos/power metal/grupos/rhapsody/discos/Symphony of Enchanted Lands'); 
Con esto me daría por bien servido, si no fuera porque al final de los breadcrumbs se imprime el caracter », que no debería aparecer.



Con tal propósito, la idea es que cuando se lea el último índice del array, no se imprima dicho caracter. Algo así:

Código PHP:
function breadcrumbs($migas) {
    
$m      explode('/'$migas);
    
$maximo count($m);
            
    for (
$i=0$i<$maximo$i++) {
        if ( empty(
$m[$i]) ) {
            echo 
"¡Error! No se han declarado los breadcrumbs<br />";
        }
        else {
            if (
key($m[$i]) == $maximo) {
                echo 
'<i>' $m[$i] . '</i>';
            }
            else {
                echo 
'<i>' $m[$i] . '</i><b> » </b>';
            }
        }
    }
    
// echo $maximo-3;
}
breadcrumbs('musica/generos/power metal/grupos/rhapsody/discos/Symphony of Enchanted Lands'); 
Con la función key() se puede leer el número de índice de un array, pero no funciona tal cual lo empleo aquí.

¿Me ayudan?

Saludos!

Última edición por berkeleyPunk; 08/10/2014 a las 22:42