PageRenderTime 52ms CodeModel.GetById 26ms RepoModel.GetById 1ms app.codeStats 0ms

/src/Faker/ORM/Mandango/ColumnTypeGuesser.php

https://github.com/JhonnyL/Faker
PHP | 33 lines | 28 code | 4 blank | 1 comment | 1 complexity | a564620ec75f815b67f9291dba814c64 MD5 | raw file
  1. <?php
  2. namespace Faker\ORM\Mandango;
  3. class ColumnTypeGuesser
  4. {
  5. protected $generator;
  6. public function __construct(\Faker\Generator $generator)
  7. {
  8. $this->generator = $generator;
  9. }
  10. public function guessFormat($field)
  11. {
  12. $generator = $this->generator;
  13. switch ($field['type']) {
  14. case 'boolean':
  15. return function() use ($generator) { return $generator->boolean; };
  16. case 'integer':
  17. return function() { return mt_rand(0,intval('4294967295')); };
  18. case 'float':
  19. return function() { return mt_rand(0,intval('4294967295'))/mt_rand(1,intval('4294967295')); };
  20. case 'string':
  21. return function() use ($generator) { return $generator->text(255); };
  22. case 'date':
  23. return function() use ($generator) { return $generator->datetime; };
  24. default:
  25. // no smart way to guess what the user expects here
  26. return null;
  27. }
  28. }
  29. }