[risolto] data giorno in php

master1986

Utente Attivo
8 Ott 2012
234
0
16
ciao a tutti avrei bisogno di uno script che mi sviluppi la data per i prossimi 10 giorni, da richiamare tramite variabile


esempio:

$data_oggi = MERCOLEDI 29 GENNAIO
$data_domani= GIOVEDI 30 GENNAIO
$data_3_giorni = VENERDI 01 FEBBRAIO


ho letto un pò le funzioni di guida di php, ma non ho trovato qualcosa che fa al caso mio.

bisognerebbe creare un array?
 
ho trovato nel manuale php una via .... a cui ho aggiunto il pezzetto che ti interessa
dimmi se ok
ciao
Marino

PHP:
<?php

# http://localhost/test_site/php/test/date_clone.php

# http://php.net/manual/it/class.datetime.php

  $now   = new DateTime;
  $clone = $now;        //this doesnot clone so:
  $clone->modify( '-1 day' );
  echo $now->format( 'd-m-Y' ), "<br>", $clone->format( 'd-m-Y' ), "<br>";
  echo '----', "<br>";


  // will print same.. if you want to clone make like this:
  $now   = new DateTime;
  $clone = clone $now;    
  $clone->modify( '3 day' );
  echo $now->format( 'd-m-Y' ), "<br>", $clone->format( 'd-m-Y' ), "<br>";
  echo '----', "<br>";


  // array con i giorni, oggi + 10 successivi
  $mydate=array();
  $now   = new DateTime;
  for ($i = 0; $i <= 10; $i++) {
    $clone = clone $now;    
    $clone->modify( "$i day" );
    $mydate[]=$clone->format( 'd-m-Y' );
  }
  for ($i = 0; $i <= 10; $i++) {
    echo $mydate[$i], "<br>";
  }
?>
 
ciao
ma se vuole la forma MERCOLEDI 29 GENNAIO oltre quello che hai fatto tu deve ricorrere gli array con i nomi dei giorni e dei mesi in italiano e nei format( 'd-m-Y' ) dovrebbe aggiungere format( 'd-N-m-Y' ) dove N è il numero del gg della settimana 1=lunedì...7=domenica
e conviene che si faccia una funzioncina che trasforma es. da 29-3-1-2014 a MERCOLEDI 29 GENNAIO (con o sensa l'anno)
ecco un esempio
PHP:
<?php
function trasforma($d){
	$gg=array("","lun","mar","mer","gio","ven","sab","dom");
	$mm=array("","gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic");
	$e=explode("-",$d);
	return $gg[$e[1]]." ".$e[0]." ".$mm[(int)$e[2]]." ".$e[3];
}
//test di esempio
echo "<pre>";
$data=date('d-N-m-Y');
var_dump($data);
$data=trasforma($data);
var_dump($data);
echo "<pre>";
?>
 
Ultima modifica:
ciao
ma se vuole la forma MERCOLEDI 29 GENNAIO oltre quello che hai fatto tu deve ricorrere gli array con i nomi dei giorni e dei mesi in italiano e nei format( 'd-m-Y' ) dovrebbe aggiungere format( 'd-N-m-Y' ) dove N è il numero del gg della settimana 1=lunedì...7=domenica
e conviene che si faccia una funzioncina che trasforma es. da 29-3-1-2014 a MERCOLEDI 29 GENNAIO (con o sensa l'anno)
ecco un esempio
PHP:
<?php
function trasforma($d){
	$gg=array("","lun","mar","mer","gio","ven","sab","dom");
	$mm=array("","gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic");
	$e=explode("-",$d);
	return $gg[$e[1]]." ".$e[0]." ".$mm[(int)$e[2]]." ".$e[3];
}
//test di esempio
echo "<pre>";
$data=date('d-N-m-Y');
var_dump($data);
$data=trasforma($data);
var_dump($data);
echo "<pre>";
?>


funziona bene, ma come faccio ad ottenere la data di domani e dopo domani?
 
ciao
ma se vuole la forma MERCOLEDI 29 GENNAIO oltre quello che hai fatto tu deve ricorrere gli array con i nomi dei giorni e dei mesi in italiano e nei format( 'd-m-Y' ) dovrebbe aggiungere format( 'd-N-m-Y' ) dove N è il numero del gg della settimana 1=lunedì...7=domenica
e conviene che si faccia una funzioncina che trasforma es. da 29-3-1-2014 a MERCOLEDI 29 GENNAIO (con o sensa l'anno)
ecco un esempio
PHP:
<?php
function trasforma($d){
	$gg=array("","lun","mar","mer","gio","ven","sab","dom");
	$mm=array("","gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic");
	$e=explode("-",$d);
	return $gg[$e[1]]." ".$e[0]." ".$mm[(int)$e[2]]." ".$e[3];
}
//test di esempio
echo "<pre>";
$data=date('d-N-m-Y');
var_dump($data);
$data=trasforma($data);
var_dump($data);
echo "<pre>";
?>


volevo ringraziarti per il tuo script borgo, ha risolto il mio problema :cool:
 

Discussioni simili