Visualizzazione risultati 1 fino 11 di 11

Discussione: ottimizzare script php

  1. #1
    Guest

    Predefinito ottimizzare script php

    Ciao a tutti... io ho il seguente script:
    Codice PHP:
    <?php
    $NumElementiXRiga
    = 5;
    $Elementi = 0;
    foreach (
    glob("./zine/*") as $filename) {

    if(
    $Elementi == 0) {print '<tr>'; }

    $filename = preg_split('[/]', $filename);

    print
    '<td>
    <p style="text-align:center"><a href="index.php?data='
    .$filename[count($filename)-1] .'&page=1"><img src="img/cartella.png" width="48" height="48"/></a></p>
    <p style="text-align:center">'
    .$filename[count($filename)-1] . '</p><br />
    </td>'
    ;

    if(
    $Elementi == ($NumElementiXRiga-1)){
    print
    '</tr>';
    $Elementi = 0;
    }
    else{
    $Elementi++;}
    }
    if(
    $Elementi < ($NumElementiXRiga-1)){ print '</tr>';}
    ?>
    che funziona correttamente. praticamente mi va a vedere tutti i file contenuti e me li elenca per 5 a riga associando un'icona...

    ora il mio problema è che vorrei che venissero stampati in ordine di data di creazione/modifica

    come posso fare?
    -
    nessuno saprebbe aiutarmi?
    Ultima modifica di darkwolf : 03-04-2011 alle ore 23.47.43

  2. #2
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Citazione Originalmente inviato da punkrosteeny Visualizza messaggio
    nessuno saprebbe aiutarmi?
    Invece di stampare subito gli elementi li salvi prima in un array, poi lo ordini nel modo desiderato e infine stampi.


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da saitfainder Visualizza messaggio
    Invece di stampare subito gli elementi li salvi prima in un array, poi lo ordini nel modo desiderato e infine stampi.
    si ok l'avevo pensata anche io, xo ho postato qui proprio perchè non saprei creare un array ordinato per data di creazione e o ultima modifica...

  4. #4
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Basta usare l'apposita funzione usort


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  5. #5
    Guest

    Predefinito

    se mai servirà http://php.net/manual/en/function.filemtime.php ma cmq non ci riesco.. per questo ho postato.

  6. #6
    Guest

    Predefinito

    ti scrivo la funzione ordinamento in php (ordinamento per bubble sort)

    Codice PHP:
    function ordina($array[],$dimensione)
    {

    for (
    $i = $dimensione - 1; $i >= 0; $i--)
    {
    for (
    $j = 0; $j < $i;$ j++)
    {
    if (
    $array[$j] > $array[$j + 1])
    {
    $comodo=$array[$j];
    $array[$j]=$array[$j+1];
    $array[$j+1]=$comodo;
    }
    }
    }
    }
    p.s: funziona solamente se la chiave dei vettori è numerica, se ad esempio usi indici di vettori alfanumerici come ad esempio $array['pizza']; non funzione, ma dato l'esempio sopra sembra pertinente, ciao e buona giornata. spero di averti aiutato.
    Ultima modifica di saitfainder : 05-04-2011 alle ore 11.09.51

  7. #7
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Citazione Originalmente inviato da gestioneclan Visualizza messaggio
    ti scrivo la funzione ordinamento in php (ordinamento per bubble sort)
    Usando usort non c'è bisogno di implementare l'algoritmo di ordinamento, ma solo la funzione che effettua il confronto.


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  8. #8
    Guest

    Predefinito

    Grazie mille gestioneclan

    Citazione Originalmente inviato da saitfainder Visualizza messaggio
    Usando usort non c'è bisogno di implementare l'algoritmo di ordinamento, ma solo la funzione che effettua il confronto.
    potresti farmi un esempio? non essendo esperto sinceramente dalle tue risposte non deduco molto...

  9. #9
    Guest

    Predefinito

    anche a me interesserebbe... saitfainder ci puoi fare un esempio pratico?

  10. #10
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Basta guardare l'esempio sulla pagina della documentazione: usano dei semplici interi, ma visto che la funziona è personalizzata puoi effettuare il confronto anche su determinati elementi di un array.


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  11. #11
    Guest

    Predefinito

    basta che fai così, riempi un array con i tuoi valori, non ha importanza quale sia il tipo, copi incolli la funzione nella pagina che ti serve (o al limite la includi), dopo di chè fai così:

    ordina($array[],$dimensione);

    dove $array[] è il tuo array,

    e $dimensione è la dimensione del tuo array, se non say la dimensione fai così:

    $dimensione = $array[$lenght]; e lì finirà la dimensione del tuo array e poi la passi...

    spero ti vada bene :)

    Buona Giornata :P

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •