Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: contare array

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    29

    contare array

    salve..
    come faccio a contare gli elementi in un array se questi risultato non empty ?

    ho provato così ma ...mi ritorna 1 e le variabili settata sono più di una.



    $contag= array(
    $player1,
    $player2,
    $player3,
    $player4,
    $player5,
    $player6,
    $player7,
    $player8,
    $player9,
    $player10,
    $player11,
    $player12,
    $player13,
    $player14,
    $player15,
    $player16,
    $player17,
    $player18,
    $player19,
    $player20,
    $player21,
    $player22,
    $player23,
    $player24 );

    $risuconta=count(!empty($contag));
    echo $risuconta;

    grazie...

  2. #2
    la funzione empty ti torna un bool che tu traformi da falso in vero o viceversa ma che cmq rimane un solo elemnto quindi per forza ti torna uno stai contando il bool e non l'array.

    prova con :
    Codice PHP:
    if (!empty($contag))
    {
    $risuconta=count($contag);
    echo 
    $risuconta;

    OUTSHINE '84

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    29
    ah...ok..
    ma allora come posso fare per contare le variabili che contengo un valore?
    nel mio caso contengono un valore stringa e non numerico..
    ty...

  4. #4
    Non sono sicura di aver capito esattamente cosa ti serve ... Può essere utile?

    Codice PHP:
    foreach ($contag as &$value) {
       
    $risuconta  strlen ($value );
      if ( 
    $risuconta >0)
     {
        echo  
    $risuconta
     }

    Questo stampa per ogni elemnto dell'array la lunghezza della stringa contenuta nel caso sia >0.
    OUTSHINE '84

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    29
    ehmm.. grazie cmq. potrà essere utile nel futuro...
    però a me serve conoscere il numero delle variabili non vuote (che contengono un valore, nel mio caso il valore è un nome) tra quelle che ho elencato ed inserito nell' array ($player1 , $player2 ecc...)

  6. #6
    questo ti dice quante variabile nono vuote ci sono:

    Codice PHP:

    $risuconta  
    0

    foreach (
    $contag as &$value) {
         if (!empty(
    $value))  $risuconta++;
    }

    echo 
    $risuconta
    questo invece le posizioni delle varibile dell'array non vuote:

    Codice PHP:

    for($i 0$i sizeof($contag ); ++$i)
    {
       if(!empty(
    $contag [$i]) echo "posizione: ".$i;

    OUTSHINE '84

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    29
    credo di aver risolto
    ho fatto:

    $contag=0;

    if ((!empty($player1))){
    $contag++;

    }
    if ((!empty($player2))){
    $contag++;
    }
    if ((!empty($player3))){
    $contag++;
    }
    if ((!empty($player4))){
    $contag++;
    }
    if ((!empty($player5))){
    $contag++;
    }
    if ((!empty($player6))){
    $contag++;
    }
    if ((!empty($player7))){
    $contag++;
    }
    if ((!empty($player8))){
    $contag++;
    }
    if ((!empty($player9))){
    $contag++;
    }
    if ((!empty($player10))){
    $contag++;
    }
    if ((!empty($player11))){
    $contag++;
    }
    if ((!empty($player12))){
    $contag++;
    }
    if ((!empty($player13))){
    $contag++;
    }
    if ((!empty($player14))){
    $contag++;
    }
    if ((!empty($player15))){
    $contag++;
    }
    if ((!empty($player16))){
    $contag++;
    }
    if ((!empty($player17))){
    $contag++;
    }
    if ((!empty($player18))){
    $contag++;
    }
    if ((!empty($player19))){
    $contag++;
    }
    if ((!empty($player20))){
    $contag++;
    }
    if ((!empty($player21))){
    $contag++;
    }
    if ((!empty($player22))){
    $contag++;
    }
    if ((!empty($player23))){
    $contag++;
    }
    if ((!empty($player24))){
    $contag++;
    }



    echo $contag;

    ed ha funzionato...
    grazie cmq per la risposta...ciao...

  8. #8
    Originariamente inviato da atrx
    credo di aver risolto
    ho fatto:

    $contag=0;

    if ((!empty($player1))){
    $contag++;
    }

    ...

    echo $contag;

    ed ha funzionato...
    grazie cmq per la risposta...ciao...
    Povero PHP

    Codice PHP:
            
        $contag
    =0;
        
    $mul 0;

        while (
    $mul <= count($tuo_array)) {
            
            
    $player $player.$mul;
            
            if ((!empty(
    $player))){
             
    $contag++;
            }
            
            
    $mul++;
        } 

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    29
    grazie...
    immaginavo che qualcuno criticasse il mio modo di scrivere il codice....
    effettivamente hai ragione si può semplificare e rendere più stile... però mi arrangio come riesco...ovviamente.

    Ora...onde evitare che arrangiandomi nuovamente tiro su un mega script di 100 righe ....dimmi..

    ora che ho trovato il numero delle variabili non empty...

    come faccio a confrontare i valori contenuti dentro l' array per trovare se ci sono valori duplicati?

  10. #10
    Codice PHP:
    <?php

        
    function arrayDuplicate($array){
         
         return 
    array_unique(array_diff_assoc($array,array_unique($array)));
         
        }; 

        
    $array = array("A","B","J","C","D","E","B","DFG","46GH","A","B","C","D");

        
    print_r($array);

        
    $result=arrayDuplicate($array);
        
    print_r($result);

    ?>
    In questo modo ti visualizza quelli duplicati.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.