PHP Fake data generator framework with multiple input and output formats.
Clone or download
niklongstone Merge pull request #16 from Fakerino/fix-doctrine-datetime
Fix doctrine datetime # and improve table filler
Latest commit 920df67 Feb 12, 2017
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app add different ODS data path support May 26, 2015
build add different ODS data path support May 26, 2015
src/Fakerino improve table filler, fix TextGenerator addChar option Feb 12, 2017
tests/Fakerino/Test improve table filler, fix TextGenerator addChar option Feb 12, 2017
.gitignore add code coverage status Mar 15, 2015
.scrutinizer.yml add console command feature, refactor classes May 8, 2015
.travis.yml improve table filler, fix TextGenerator addChar option Feb 12, 2017
CHANGES.md * Minor fixes Sep 4, 2015
LICENCE fix code style and minor bugs, add more tests, refactor class, add mo… Feb 27, 2015
README.md Update README.md Sep 9, 2015
composer.json Updating symfony yaml component to allow 2.0 or 3.0 Feb 7, 2017
phpunit.xml.dist

README.md

Fakerino

Fakerino is a fake data generator framework fully extensible.

Latest Stable Version Latest Unstable Version Travis Ci

SensioLabsInsight Code Climate Quality Score Code Coverage

License

Join the chat at https://gitter.im/Fakerino/Fakerino

###Main features

  • Fake complex data (e.g. person: name, surname, hobby, country, ... ).
  • Fake single data (e.g. name, surname, integer, text, ...).
  • Fake data in different languages.
  • Fake regular expression data (e.g. url => '/www\.\w+\.com/').
  • Fake data multiple times.
  • Fake a database table row/s with one line of code.
  • Fake a Twig string or file automatically (e.g. Hello Mr {{ surname }})
  • Fake a PHP object/entity in one line of code (fills public properties and setters with fake data).
  • Support JSON, array and string output.
  • Support array, Yaml, XML, PHP, Txt and Ini configurations.
  • Fake from command line interface.

For more information about installation, features, support, contribution, or other, please read the Fakerino docs.

Installation

Use Composer to manage the dependencies of your project. ####In your project folder run:

composer require fakerino/fakerino='~0.8'
vendor/fakerino/fakerino/build/ods vendor/fakerino/fakerino/data

Like a stand-alone project run:

composer create-project fakerino/fakerino fakerino

Quick start

<?php
require ('vendor/autoload.php'); 
use Fakerino\Fakerino;

$fakerino = Fakerino::create();
echo $fakerino->fake('Surname')->toJson(); //["Donovan"]
echo $fakerino->fake('nameFemale'); //Alice
echo $fakerino->fake('/www\.\w+\.com/'); //www.nikdjap.com
echo $fakerino->fake('nameMale')->num(3); //Bob Jack Rick
echo $fakerino->fake(array('nameMale', 'Surname'))->num(3)->toJson(); //[["Simon","Rodgers"],["Dean","Smith"],["Anthony","Bauman"]]

With a configuration you can combine fake data, or declare your customs.

$fakerino = Fakerino::create('./conf.php');
print_r($fakerino->fake('fakeChat')->toArray());
/* 
Array(
    [0] => Array
        (
            [0] => Array
                (
                    [0] => Fake Rino <fakerino@fake.com>
                    [1] => 01 Jan 2015 14:14:42
                    [2] => Hi gentle developer!
                )
            [1] => Array
                (
                    [0] => Anonym Dev <anon@dev.com>
                    [1] => 01 Jan 2015 14:17:42
                    [2] => Hi Fakerino!
                )
        )
)*/

With Command line

app/fake -h //for help
app/fake namemale surname //Travis Baldwin
app/fake surname -j //["Brooks"]
app/fake nameMale -n 2 //Nick Andy
app/fake country -c path/config.ini //uses a config file
app/fake surname -l de-DE //Schleßinger
app/fake -s 'Hello Mrs {{namefemale}} {{surname}}' -l de-DE //Hello Mrs Seeliger Ceylin
app/fake -t tableName -c path/confix.xml -n 10 //Inserts 10 fake rows into tableName

Third parties