Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Help su ciclo array

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605

    Help su ciclo array

    ciao a tutti,
    cerco di spiegare quello che mi piacerebbe fare .. e che non sto mettendo bene a fuoco come
    mi faccio il parsing di un xml che contiene degli annunci.

    Ogni annuncio ha un identificativo chiamato "riferimento" e finora facevo questo in $annXML mi metto tutti i riferimenti dell'xml ed in $annDB tutti i riferimenti presenti nel db.
    Cosi con in_array mi vado ad aggiornare l'annuncio se esiste altrimenti lo inserisco.

    e questo è più o meno il pezzo di codice che fa questo...

    Codice PHP:
    //annunci xml        foreach (self::$annunci as $an) {            $rife[(string) $an->riferimento] = (string) $an->riferimento;        }
            //se ci sono annunci nel xml vado avanti        if (count($rife) > 0) {            $arr = $wpdb->get_results("SELECT post_id, meta_value FROM $wpdb->postmeta WHERE meta_value IN ('" . implode("',  '", array_keys($rife)) . "') and meta_key = '_listing_riferimento'");            //annunci memorizzati        $annDB = array();        foreach ($arr as $annunciDB) {                //metto tutti i riferimenti in array                $annDB[$annunciDB->meta_value] = $annunciDB->meta_value;         }

            
    foreach (self::$annunci as $annXML) {
                    if (
    in_array($annXML->riferimento$annDB)) {
                          
                    echo 
    "faccio update";
                 }else{
                   echo 
    "faccio insert";
                  }
           } 

    ora mi sono accorto che oltre al riferimento nel xml ci sta anche la data ed ora di un annuncio e quindi mi piacerebbe aggiornare solo gli annunci sempre confrontando i riferimenti ma solo se per quel riferimento è cambiata la data ed ora.
    (la data dal db riesco facilmente a recuperarla con la key "_listing_data_annuncio")

    ciao e grazie per un qualsiasi suggeriemento.
    Giuseppe

  2. #2
    se fai in modo di avere $annDB fatto in questo modo:

    codice:
    array(
    "riferimento" => "data e ora annuncio"
    ...
    );

    il codice lo cambi in

    Codice PHP:

    if(array_key_exists($annXML->riferimento$annDB) && "faccio il check delle date"){
    ..
    }else{
    ...

    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

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.