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

Discussione: function date

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929

    function date

    ciao a tutti,

    è possibile fare un'operazione del genere con le date?

    Allora io spedisco sempre del materiale in giorni prestabiliti
    il lunedì il mercoledì e il venerdì

    adesso se l'ordine arriva oggi che è giovedì la consegna slitta a lunedì (perchè venerdi è troppo vicino e io ho bisogno di 2 giorni lavorativi) se arriva lunedì la consegna è mercoledì (perchè io posso lavorare lunedì e martedì) e via dicendo...


    come posso fare una cosa del genere?

    Grazie mille

  2. #2
    puoi farlo... spiegando meglio.. perchè non p che si capisca molto.. è troppo decontestualizzato


    spiega solo cosa ti serve (il perchè sono affari tuoi)...

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    grazie mille
    allora deve valutare che giorno della settimana è, ad esempio oggi è giovedì aggiungere sempre 2 giorni (quindi arriviamo a sabato) e restituirmi il primo lunedì o mercoledì o venerdì successivo ai due giorni

    quindi con la data di oggi deve darmi lunedì 17 con la data ad esempio di martedì 18 mi dovrebbe dare venerdì 21


    :master:

  4. #4
    così ottieni il giorno della settimana corrispondente a 2 giorni oltre la data presente....
    $giorno = date('w',strtotime ("+2 day"));

    restituisce un numero da 0 (domenica) a 6 (sabato)

    a queto punto puoi semplicemente fare dei controlli.. se il giorno è <= 1 la data che aspetti è lunedì... se <= 3 mercoleì... se <= 5 è venerdì...

    se poi da questo vuoi ottenere la data esatta ti basta vedere quanti giorni mancano a queste "mete" e quindi sfruttare strtotime con i giorni mancanti....

    mi spiego

    if($giorno<=1) $attesa = 3-$giorno + 2;
    if($giorno<=3) $attesa = 3-$giorno + 2;
    if($giorno<=5) $attesa = 5-$giorno + 2;

    echo date('d-m-y',strtotime ("+$attesa day"));

    dovrebbe fungere..

    cioè la logica dovrebbe essere questa.. poi può darsi che ho sbagliato qualcosa nei calcoli.. vedi tu se corrispondono


  5. #5
    aggiunta...

    il sabato essendo 6 (qindi non minore di 1) lo devi considerare a parte...

    if($giorno<=6) $attesa = 2; //se è sabato aspetto lunedì

  6. #6
    Originariamente inviato da Rossella_75
    grazie mille
    allora deve valutare che giorno della settimana è, ad esempio oggi è giovedì aggiungere sempre 2 giorni (quindi arriviamo a sabato) e restituirmi il primo lunedì o mercoledì o venerdì successivo ai due giorni

    quindi con la data di oggi deve darmi lunedì 17 con la data ad esempio di martedì 18 mi dovrebbe dare venerdì 21


    :master:
    codice:
    <?php
    $mese = date('m');
    $anno = date('Y');
    $giorno = date('d');
    
    switch (date("w", mktime(0, 0, 0, $mese, $giorno+2, $anno))){
    case 0:
    #Caso per domenica
      echo date("d-m-Y", mktime(0, 0, 0, $mese, $giorno+3, $anno));
    break;
    
    case 6:
    #Caso per sabato
     echo date("d-m-Y", mktime(0, 0, 0, $mese, $giorno+4, $anno));
    break;
    
    default:
     echo date("d-m-Y", mktime(0, 0, 0, $mese, $giorno+2, $anno));
    break;
    }
    
    ?>
    dovrebbe essere una cosa del genere l'ho scritta un pò in fretta e nemmeno in maniere tanto elegante

    attenta ai cambi di mese e di anno .. festività comandate e santi patroni
    ciao
    Soluzioni di Web marketing, CMS, Temi wordpress, grafica e molto altro

    -----
    Ogni topic aperto con un titolo errato fa perdere un capello al moderatore che lo dovrà sistemare.. se non vuoi contribuire alla calvizia dei moderatori apri 3D a norma di regolamento, e prima fai una ricerca! No pvt tecnici!

  7. #7
    Originariamente inviato da ringo_mato
    attenta ai cambi di mese e di anno .. festività comandate e santi patroni
    appunto io ho usato strtotime.. dovrebbe superare queste problematiche

  8. #8
    Originariamente inviato da }gu|do[z]{®©
    appunto io ho usato strtotime.. dovrebbe superare queste problematiche
    dubito che con strtotime php ti dica oggi è natale o capodanno e non si lavora
    Soluzioni di Web marketing, CMS, Temi wordpress, grafica e molto altro

    -----
    Ogni topic aperto con un titolo errato fa perdere un capello al moderatore che lo dovrà sistemare.. se non vuoi contribuire alla calvizia dei moderatori apri 3D a norma di regolamento, e prima fai una ricerca! No pvt tecnici!

  9. #9
    Originariamente inviato da ringo_mato
    dubito che con strtotime php ti dica oggi è natale o capodanno e non si lavora
    no scusa.. mi riferivo ai cambi d'anno e di mese... il resto non l'avevo letto

    vabbè.. per le festività.. boh.. a seconda delle sue esigenze e dello scopo di questo script può gestirsela in modi diversi..

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    grazie mille e scusate per il ritardo nella risposta


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.