Y at-il un moyen de générer un code postal à 5 chiffres en utilisant fzaninotto's Faker? Sa fonction fournie pour ce faire, $faker->postcode
, n'offre pas de paramètres pour limiter sa taille, donc il donne souvent un code postal à 9 chiffres au lieu de 5, par exemple, 10278-4159 au lieu de 10278. Ceci est problématique pour ensemencer un base de données, parce que ma base de données sql a une colonne de code postal de INT (5). Je sais que je peux simplement générer un nombre aléatoire de 5 chiffres avec Faker, mais je voulais savoir s'il y avait une façon native de générer des codes postaux à 5 chiffres.php fzaninotto Faker - Comment générer seulement 5 chiffres Code postal?
1
A
Répondre
3
Une solution de contournement que j'ai trouvée utilise le code postal de la classe d'adresses qui renvoie toujours 5 chiffres.
Au lieu de $faker->postcode
, vous pouvez appeler Address::postcode()
.
N'oubliez pas d'inclure use Faker\Provider\Address;
.
Vous pouvez simplement raccourcir le code postal renvoyé en utilisant ['substr()'] (http://php.net/manual/fr/function.substr.php) -> '$ postcode = (strlen ($ faker- > code postal)> 5)? substr ($ faker-> code postal, 0,5): $ faker-> code postal; ' – Sean
Les codes postaux ne doivent pas être des entiers. Le code postal de ma ville commence par un '0', cela causerait un problème. Démonstration du problème principal «0»; http: //sqlfiddle.com/#! 9/814ba/1 ... Ne pourriez-vous pas prendre les 5 premiers caractères? – chris85
"parce que ma base de données sql a une colonne de code postal de INT (5)" Danger! Danger, Will Robinson! Vous allez transformer '02108' en' 2108' et vous devez le remplir à gauche pour l'afficher. Les codes postaux ne sont pas des ** entiers. – ceejayoz