Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di freetom
    Registrato dal
    Nov 2001
    Messaggi
    3,725

    in_array non mi funzia...

    Codice PHP:
    <?php

    $tutteleruote
    file ('estrazioni.txt');

    print_r ($tutteleruote);

    //scelta della sola ruota di BARI...

    print "E' un array?... ".is_array($tutteleruote);

    //nelle ultime due estrazioni (22 elementi dell'array) vorrei prendere solo le combinazioni di BARI

    for ($i=0$i<22$i++) {

    if (

    in_array("BA"$tutteleruote)



    {
        echo 
    "<font color=red size=7>$tutteleruote[$i]</font>";
    }
    }


    dove $tutteleruote è un array il cui print_r è ad es.

    Array ( [
    0] => 2001/01/03 BA 26 59 60 67 17 [1] => 2001/01/03 CA 13 83 16 41 68 [2] => 2001/01/03 FI 33 87 76 7 10 [3] => 2001/01/03 GE 5 38 3 65 72 [4] => 2001/01/03 MI 62 30 7 61 52 [5] => 2001/01/03 NA 25 38 15 31 86 [6] => 2001/01/03 PA 15 56 89 85 63 [7] => 2001/01/03 RM 41 17 80 48 9 [8] => 2001/01/03 TO 42 16 12 60 20 [9] => 2001/01/03 VE 51 84 76 42 90 [10] => 2001/01/08 BA 84 80 40 15 9 [11] => 2001/01/08 CA 6 87 80 25 60 [12] => 2001/01/08 FI 72 68 79 84 88 [13] => 2001/01/08 GE 38 54 67 3 81 [14] => 2001/01/08 MI 61 1 16 31 56 [15] => 2001/01/08 NA 19 43 29 61 34 [16] => 2001/01/08 PA 16 15 66 1 44 [17] => 2001/01/08 RM 69 77 42 53 27 [18] => 2001/01/08 TO 90 50 20 59 3 [19] => 2001/01/08 VE 59 69 72 60 70 [20] => 2001/01/10 BA 14 87 29 75 76 [21] => 2001/01/10 CA 86 13 31 82 84 [22] => 2001/01/10 FI 76 83 63 84 27 [23] => 2001/01/10 GE 9 49 68 47 70 [24] => 2001/01/10 MI 35 58 31 30 79 [25] => 2001/01/10 NA 31 55 72 54 11 [26] => 2001/01/10 PA 30 58 87 43 16 [27] => 2001/01/10 RM 8 33 37 61 15 [28] => 2001/01/10 TO 89 51 10 70 84 [29] => 2001/01/10 VE 75 53 38 65 27 [30] => ....

    ma non mi visualizza affatto ... quanto volutoe non considera affatto il codice... di in_array... ecc...


    ?>
    Grazie


  2. #2
    E' ovvio che NON funzioni. L'array $tutteleruote NON contiene un valore 'BA', ma stringhe come '2001/01/03 BA 26 59 60 67 17'.

    Devi eseguire il parsing delle singole righe del file.

  3. #3
    Utente di HTML.it L'avatar di freetom
    Registrato dal
    Nov 2001
    Messaggi
    3,725

    Ho provato a fare il parsing... ma...

    Codice PHP:

    for ($i=0$i<22$i++) {

    $str $tutteleruote[$i];

    preg_match('/BA/'$str$matches);
    if (
    $matches >=1)  {

    print 
    "<font color=red size=3>".$tutteleruote[$i]."</font>";

    }
    else 

    echo 
    "***";


    Adesso mi stampa in rosso... tutte le prime 22 estrazioni (BA.CA.FI ecc...) trovate in quanto matches.. risulta 3 ma invece io vorrei stampare a video solo gli elementi dell'array che abbiano al loro interno la sottostringa BA...

    Grazie


  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    codice:
    $array = array('2001/01/03 BA 26 59 60 67 17',
                   '2001/01/03 GE 5 38 3 65 72',
                   '2001/01/08 BA 84 80 40 15 9'
                  );
    
    echo '<pre>';              
    print_r($array);
    echo '</pre>';
    foreach($array as $stringa) {
    echo preg_match('#BA#',$stringa) ? "<font color=\"red\" size=\"3\">$stringa</font>" : $stringa;
    echo '
    ';
    }
    La logica è questa. Se usi i css anzichè il tag font è meglio.

  5. #5
    Utente di HTML.it L'avatar di freetom
    Registrato dal
    Nov 2001
    Messaggi
    3,725

    grazie comunque a me in particolare servirebbe...

    poter aggiungere in un altro array solo le stringhe contenenti al loro interno "BA"

    ovvero poter creare l'array con solamente tutte le estrazioni di bari.

    come potrei modificare il cod soprapostato a tal fine?


    echo '<pre>';
    print_r($array);
    echo '</pre>';
    foreach($tutteleruote as $stringa) {
    echo preg_match('#BA#',$stringa) ? "<font color=\"red\" size=\"3\">$stringa</font>" : $stringa; //al posto di echo.. dovrei mettere qualcosa del tipo $newarray.push($stringa)...
    echo '
    ';
    }



    grazie infinite

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    E' da tempo che frequenti questo forum. Un pò di spirito di iniziativa.

    codice:
    $array = array('2001/01/03 BA 26 59 60 67 17',
                   '2001/01/03 GE 5 38 3 65 72',
                   '2001/01/08 BA 84 80 40 15 9'
                  );
    
    echo '<pre>';              
    print_r($array);
    echo '</pre>';
    $bari = array();
    foreach($array as $stringa) {
      if (preg_match('#BA#',$stringa)) {
      $bari[] = $stringa;
      }    
    }
    echo '<pre>';              
    print_r($bari);
    echo '</pre>';

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.