Je veux pouvoir déterminer le mois de la variable de date actuelle. Je suis ex vb.net et la façon de le faire est simplement date.Month
. Comment puis-je faire cela en PHP?
Merci,
Jonesy
J'ai utilisé date_format($date, "m"); //01, 02..12
C’est ce que je voulais, la question est maintenant comment puis-je comparer cela à un int puisque $monthnumber = 01
Devient simplement 1
Voir http://php.net/date
date('M')
ou date('n')
ou date('m')
...
Mettre à jour
m Représentation numérique d'un mois, avec les zéros au début 01 à 12
n Représentation numérique d'un mois, sans zéros au début 1 à 12
[~ # ~] f [~ # ~] Représentation alphabétique d'un mois de janvier à décembre
À quoi ressemble votre "variable de données"? Si c'est comme ça:
$mydate = "2010-05-12 13:57:01";
Vous pouvez simplement faire:
$month = date("m",strtotime($mydate));
Pour plus d'informations, consultez date et strtotime .
EDIT:
Pour comparer avec un int, faites simplement une date_format($date,"n");
qui vous donnera le mois sans zéro.
Sinon, essayez l'une de ces solutions:
if((int)$month == 1)...
if(abs($month) == 1)...
Ou quelque chose de bizarre avec ltrim, round, floor ... mais date_format () avec "n" serait le meilleur.
$unixtime = strtotime($test);
echo date('m', $unixtime); //month
echo date('d', $unixtime);
echo date('y', $unixtime );
as date_format utilise le même format que date ( http://www.php.net/manual/fr/function.date.php ) La "représentation numérique d'un mois, sans zéros" est un minuscule n .. donc
echo date('n'); // "9"
Comme ce n'est pas précisé si vous voulez parler de la date actuelle du système ou de la date dans une variable, je vous répondrai par un exemple.
<?php
$dateAsString = "Wed, 11 Apr 2018 19:00:00 -0500";
// This converts it to a unix timestamp so that the date() function can work with it.
$dateAsUnixTimestamp = strtotime($dateAsString);
// Output it month is various formats according to http://php.net/date
echo date('M',$dateAsUnixTimestamp);
// Will output Apr
echo date('n',$dateAsUnixTimestamp);
// Will output 4
echo date('m',$dateAsUnixTimestamp);
// Will output 04
?>