Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di lukezz
    Registrato dal
    Feb 2010
    Messaggi
    494

    Array_shift e condizione

    Salve,

    mettendo una condizione all'array_shift non stampa l'array correttamente:

    Codice PHP:
    $pila = array("2""2""3""5");
    $num count($pila);
    for(
    $x=1$x <= $num$x++){
        if (
    array_shift($pila) < '5'){
            echo 
    '<strong>'.array_shift($pila).'</strong> ='.$x.'<br>';
        }else{
            echo 
    array_shift($pila).' ='.$x.'<br>';
        }

    Stampa solo i primi due array, sapete dirmi come mai?

  2. #2
    Utente di HTML.it L'avatar di lukezz
    Registrato dal
    Feb 2010
    Messaggi
    494
    Magari usare qualcosa di simile ad array_shift

  3. #3
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Che vuol dire che ti stampa "i primi 2 array"? Io di array ne vedo uno solo, $pila.
    Qual è il risultato che vorresti ottenere?

  4. #4
    Utente di HTML.it L'avatar di lukezz
    Registrato dal
    Feb 2010
    Messaggi
    494
    Volevo dire stampa solo i primi due cioè $pila[0] e $pila[1]. Se provi il codice si capisce.

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Ad ogni ciclo tiri via 2 elementi dall'array, uno nell'if e uno nell'echo.
    Devi fare solo un array_shift() ad ogni ciclo, così
    Codice PHP:
    $pila = array("2""2""3""5");
    $num count($pila);
    for(
    $x=1$x <= $num$x++)
    {
        
    $temp array_shift($pila);
        if (
    $temp '5'){
            echo 
    '<strong>'.$temp.'</strong> ='.$x.'<br>';
        }else{
            echo 
    $temp.' ='.$x.'<br>';
        }


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.