8771 sujets

Développement web côté serveur, CMS

Bonjour,

J'aimerai que dans une variable, supprimer les espaces les ':' les '/'.
J'ai essayé avec $trim et preg_replace, mais pas de résultat.

$date = '['.gmdate("j/m/Y H:i:s",time()+3600*($timezone+date("I"))).']'; // cette variable est OK je m'en sert dans un code.
$codeVerif = gmdate("jmYHis",time()+3600*($timezone+date("I"))); // ne fonctionne pas 


$date = '['.gmdate("j/m/Y H:i:s",time()+3600*($timezone+date("I"))).']'; // cette variable est OK je m'en sert dans un code.
$codeVerif = $date;
$codeVerif = preg_replace('/', ' ', ':',$codeVerif); // NE fonctionne pas.

J'aimerai avoir

[12092022165646]


Merci à vous.
Pour autant que je comprenne le problème pourquoi ne pas simplement utiliser

$date = gmdate('jmYHis', $expression_de_date);

on n'est pas obligé de mettre des séparateurs entre les lettres.
Bonjour PapyJP,
J'ai déjà essayé sans mettre les séparateurs, mais cela ne change rien.
Je vais voir avec strtr ou str_replace.
a écrit :
$date = gmdate('jmYHis', $expression_de_date);

Par contre je ne comprends pas ta ligne de code.
Merci pour ton aide.
Bonjour,

J'ai trouvé.

$codeverif1= $date;
$codeverif2=array ('/',":"," ");
$codeverif3=array("");
$codeVerif = str_replace($codeverif2,$codeverif3,$codeverif1);


Merci à vous tous.
Salut,

je ne sais pas comment tu as fais tes tests, mais a priori la ligne que tu indiques comme "ne fonctionne pas" fonctionne bien chez moi Smiley hum (j'ai juste remplacer $timezone par 2)


<?php 
echo gmdate("jmYHis",time()+3600*(2+date("I")));
?>


Ensuite je ne sais pas ce que tu vas faire de ce code la, mais généralement on va mettre l'année en premier et le jour en 3e donc plutôt ça :

<?php 
echo gmdate("YmjHis",time()+3600*(2+date("I")));
?>


L'avantage c'est quand tu stockes ce code la (en base de données par exemple) tu peux directement trier par date et du coup facilement obtenir tout ce qui a eu lieu en 2021 par exemple :
20210101
20211201
20211231
20220101
20221201
20221231

Dans ton cas le tri sera par numéro de jour ce qui risque de compliqué la tache pour savoir ce qui s'est passé en 2021 par exemple :
01012021
01012022
0102201
0102202
02012021
02012022
Bonjour Mathieuu,
Merci pour tes explications.
Je les garde pour apprendre.
Mais le code que j'ai trouvé me va très bien pour ce qu'il y a à faire.
Ils ne rechercherons jamais des infos par rapport à la date, car la chaine finale est copiée puis collée dans une autre application.
Merci de tout cœur pour ton aide précieuse.