Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    [PHP] Da due array costruirne un terzo.

    Ciao a tutti,
    ho un piccolissimo problema di ordinamento per la crezione di un'array, ora speigo il motivo:

    codice:
    Ho un'array di riferimento che ad esempio contiene i seguenti valori:
    
    $riferimento[0] = A;
    $riferimento[1] = B;
    $riferimento[2] = K;
    $riferimento[3] = F;
    ora ho un'altro array del tipo:

    codice:
    $array[0] = K;
    $array[1] = F;
    $array[2] = B;
    ora mi servirebbe creare un terzo array (non riesco a capire su come fare :master: ) così fatto

    codice:
    $nuovo[0] = 1;
    $nuovo[1] = B;
    $nuovo[2] = K;
    $nuovo[3] = F;
    cioè voglio ordinare il secondo array secondo partendo dal primo che per me è di riferimento e nelle posizioni in cui non c'è nulla mettere 1...

    Grazie mille a tutti!

  2. #2
    Prova così:

    codice:
    $nuovo=array();
    for ($i=0;$i<count($riferimento);$i++)
    {
     $nuovo[$i]=1;
     for ($j=0;$j<count($array);$j++)
     {
      if ($array[$j]==$riferimento[$i])
      {
        $nuovo[$i]=$riferimento[$i];
      }
     }
    }
    ______________________________________

    Progresso Web.

  3. #3
    grazie caruccis provo e ti faccio sapere!

  4. #4
    Originariamente inviato da dinucciarturo
    grazie caruccis provo e ti faccio sapere!

    problemino....c'è qualcosa che non va, ho provato questo pezzetto di codice e sembra entrare in un wile che non finisce mai... :master:

    grazie!


    codice:
    <?php 
     
    $riferimento["0"] = A;
    $riferimento["1"] = B;
    $riferimento["2"] = K;
    $riferimento["4"] = F;
     
    $array[0] = K;
    $array[1] = F;
    $array[2] = B;
     
     
     
    $nuovo=array();
    for ($i=0;$i<count($riferimento);$i++)
    {
     $nuovo[$i]=1;
     for ($j=0;$j<count($array);$j++)
     {
      if ($array[$j]==$riferimento[$i])
      {
        $nuovo[$i]=$riferimento[$i];
      }
     }
    }
     
    
    for ($n=0;$n=3;$n++){
     echo "$nuovo[$n]";
    }
     
    ?>

  5. #5
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Codice PHP:
    foreach ($riferimento as $key => $val) {
        if (
    array_search($val,$array) === false)
            
    $nuovo[$key] = 1;
        else
            
    $nuovo[$key] = $val;


  6. #6
    Originariamente inviato da luca200
    Codice PHP:
    foreach ($riferimento as $key => $val) {
        if (
    array_search($val,$array) === false)
            
    $nuovo[$key] = 1;
        else
            
    $nuovo[$key] = $val;

    QUI...
    non va...

    codice:
    <?php 
     
    $riferimento["0"] = A;
    $riferimento["1"] = B;
    $riferimento["2"] = K;
    $riferimento["4"] = F;
     
    $array[0] = K;
    $array[1] = F;
    $array[2] = B;
     
     
     
    foreach ($riferimento as $key => $val) { 
        if (array_search($val,$array) === false) 
            $nuovo[$key] = 1; 
        else 
            $nuovo[$key] = $val; 
    }
     
    for ($n=0;$n=3;$n++){
     echo "$nuovo[$n]";
    }
    
    
    ?>

  7. #7
    probabile che il problema sia nei valori:
    $riferimento["0"] = A;

    ....

    prova con gli apici

    $riferimento["0"] = "A";
    ecc.
    ______________________________________

    Progresso Web.

  8. #8

  9. #9
    Originariamente inviato da caruccis
    probabile che il problema sia nei valori:
    $riferimento["0"] = A;

    ....

    prova con gli apici

    $riferimento["0"] = "A";
    ecc.

    no no!!!

    si impasta il browser....

    codice:
    <?php 
     
    $riferimento["0"] = "A";
    $riferimento["1"] = "B";
    $riferimento["2"] = "K";
    $riferimento["4"] = "F";
     
    $array["0"] = "K";
    $array["1"] = "F";
    $array["2"] = "B";
     
     
     
    $nuovo=array();
    for ($i=0;$i<count($riferimento);$i++)
    {
     $nuovo[$i]=1;
     for ($j=0;$j<count($array);$j++)
     {
      if ($array[$j]==$riferimento[$i])
      {
        $nuovo[$i]=$riferimento[$i];
      }
     }
    }
     
    
    for ($n=0;$n=3;$n++){
     echo "$nuovo[$n]";
    }
     
    ?>

  10. #10
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da dinucciarturo

    for ($n=0;$n=3;$n++){
    echo "$nuovo[$n]";
    }
    ma che accidente è 'sta roba? E' ovvio che ti si impasta il browser, questo è un ciclo infinito.



    for ($n=0;$n< 3;$n++){
    echo "$nuovo[$n]";
    }

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.