Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    ksort che ordina array facendo distinzione

    Ciao.

    Dopo aver estratto i dati dalla tabella, con un ciclo creo un array:

    Codice PHP:
    while($row mysql_fetch_array($result)) { 
        
    $arr[$row['tag']] = $row['count'];
      } 
    E fin tutto bene.
    In seguito voglio ordinare questo array, quindi:

    Codice PHP:
    ksort($arr); 
    Quando vado a stampare i dati contenuti (ed ordinati alfabeticamente) nell'array, l'ordine viene sì rispettato, ma in modo anomalo, in quanto prima vengono ordinati i dati che hanno l'iniziale maiuscola. Finito questo si passa a tutti i dati la cui iniziale è minuscola, trovandosi a questo punto di fronte a due liste ordinate.

    Avete idea come ovviare al problema, senza per questo rendere minuscole (o maiuscole) le iniziali di tutti i dati estratti?

    Info: in questo modo funziona:
    Codice PHP:
    while($row mysql_fetch_array($result)) { 
        
    $arr[strtolower($row['tag'])] = $row['count'];
      } 
    ma non è ciò che voglio

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Perchè non ti va bene il fatto di convertire tutto in maiuscolo o minuscolo?

  3. #3
    No, vorrei mantenere le maiuscole e le minuscole così come sono.

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Codice PHP:
    function cmp($a$b) {
        if (
    strtolower($a) == strtolower($b)) {
            return 
    0;
        }
        return (
    strtolower($a) > strtolower($b)) ? : -1;
    }

    uksort($array"cmp");
    echo 
    '<pre>';
    print_r($array); 

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.