IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Besoin de générer un DateTime aléatoire entre aujourd'hui et il y a 2 ans dans une Fixtures


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2015
    Messages
    518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Juillet 2015
    Messages : 518
    Par défaut Besoin de générer un DateTime aléatoire entre aujourd'hui et il y a 2 ans dans une Fixtures
    Bonjour,

    J'ai besoin de générer un DateTime aléatoire entre maintenant et il y a 2 ans dans une fixture Symfony.

    Voici ma Fixtures

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    <?php
     
    namespace App\DataFixtures;
     
    use App\Entity\User;
    use Doctrine\Persistence\ObjectManager;
    use Doctrine\Bundle\FixturesBundle\Fixture;
    use Symfony\Component\PasswordHasher\Hasher\UserPasswordHasherInterface;
     
    class AppFixtures extends Fixture
    {
        private $passwordHasher;
     
        public function __construct(UserPasswordHasherInterface $passwordHasher)
        {
            $this->passwordHasher = $passwordHasher;
        }
     
        public function load(ObjectManager $manager)
        {
            for ($i = 1; $i < mt_rand(60, 90); $i++) {
                $user = new User();
     
                $firstName  = "prenom";
                $lastName   = "nom";
                $email      = "email" . $i . "@email.com";
                $password   = $this->passwordHasher->hashPassword($user, 'aaaaaa');
                $createdAt  = new \DateTimeImmutable(); // ICI LA DATE DOIT ETRE ENTRE MAINTENANT ET IL Y A 2 ANS
     
                $user
                    ->setFirstName($firstName)
                    ->setLastName($lastName)
                    ->setEmail($email)
                    ->setPassword($password)
                    ->setCreatedAt($createdAt);
     
                $manager->persist($user);
            }
     
            $manager->flush();
        }
    }
    Malheureusement notre bon vieux https://github.com/fzaninotto/Faker n'est plus actualisé depuis quelques temps et je ne souhaite pas inclure dans mon projet (même pour les fixtures) un repo qui n'est pas a jour. d'ailleurs si quelqu'un a une alternative SOLIDE je veux bien.. Je ne suis pas fan de Alice car le code s'écrit en yaml.


  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 325
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 325
    Billets dans le blog
    17
    Par défaut
    Et avec un bon vieux date() ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    date('Y-m-d H:i:s', mt_rand(time(), strtotime('+2 years'))))

  3. #3
    Membre habitué
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2019
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Novembre 2019
    Messages : 9
    Par défaut
    Bonjour à tous,

    Il existe également un fork de fzaninotto/Faker qui semble relativement actif; avec 2,4 millions de downloads / mois à ce jour.

    Voici sa doc : https://fakerphp.github.io/
    Voici son repo github : https://github.com/FakerPHP/Faker/

  4. #4
    Membre éclairé
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2015
    Messages
    518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Juillet 2015
    Messages : 518
    Par défaut
    merci a vous

Discussions similaires

  1. je voudrais générer un nombre aléatoire entre 0 et 1
    Par jmc41320 dans le forum Général Python
    Réponses: 6
    Dernier message: 27/02/2018, 16h58
  2. [MIPS] Générer un nombre aléatoire entre deux bornes
    Par PrincessOfDarkness dans le forum Autres architectures
    Réponses: 4
    Dernier message: 07/12/2016, 21h25
  3. Générer des nombres aléatoires entre 2 bornes
    Par Isabella83 dans le forum C
    Réponses: 6
    Dernier message: 18/04/2015, 11h14
  4. [XL-2010] Générer un nombre aléatoire entre 1 et 9999
    Par GADENSEB dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 31/08/2014, 10h48
  5. Générer un nombre aléatoire entre 0 et 1 (INCLUS !!!)
    Par haypo dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 22/08/2002, 16h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo