faker php测试数据库生成
官方地址:https://github.com/fzaninotto/Faker
使用方式:
1、composer直接下载: composer require fzaninotto/faker
2、将 "fzaninotto/faker": "^1.8" 加入composer.json,执行composer update
3、github下载到本地
引入项目和简单使用:
require '../vendor/autoload.php';
$faker = Faker\Factory::create('zh_CN'); //选择中文
//var_dump($faker);
//简单使用,可用循环输出多个。
echo $faker->name(),'<br>'; //陶洋
echo $faker->address(),'<br>'; //成都沈河区
echo $faker->email(),'<br>'; //voluptate60@sina.com
echo '<hr>';
中文简体所有可以使用的方法:
//所有方法:语言包不同,返回结果会有差异。
//Base
echo $faker->randomDigit(),'<br>'; // 6
echo $faker->randomDigitNotNull(),'<br>'; // 2
echo $faker->randomNumber($nbDigits = NULL, $strict = false),'<br>'; // 93696431
echo $faker->randomFloat($nbMaxDecimals = NULL, $min = 0, $max = NULL),'<br>'; // 24.3
echo $faker->numberBetween($min = 1000, $max = 9000),'<br>'; // 3270
echo $faker->randomLetter(),'<br>'; // n
var_export($faker->randomElements($array = array ('a','b','c'), $count = 1));echo '<br>'; // array ( 0 => 'c', )
echo $faker->randomElement($array = array ('a','b','c')),'<br>'; // b
echo $faker->shuffle('hello, world'),'<br>'; // 'loher,w lodl'
var_export($faker->shuffle(array(1, 2, 3)));echo '<br>'; // array ( 0 => 2, 1 => 1, 2 => 3, )
echo $faker->numerify('Hello ###'),'<br>'; // 'Hello 609'
echo $faker->lexify('Hello ???'),'<br>'; // 'Hello wgt'
echo $faker->bothify('Hello ##??'),'<br>'; // 'Hello 42jz'
echo $faker->asciify('Hello ***'),'<br>'; // 'Hello R6+'
echo $faker->regexify('[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}'),'<br>'; // W@A.PVX
echo '<hr>';
//Lorem,加上s复数返回是数组
echo $faker->word(),'<br>'; // rerum
var_export($faker->words($nb = 3, $asText = false));echo '<br>'; // array ( 0 => 'ratione', 1 => 'tempore', 2 => 'ullam', )
echo $faker->sentence($nbWords = 6, $variableNbWords = true),'<br>'; // Expedita consequatur quaerat temporibus vitae ea tenetur.
var_export($faker->sentences($nb = 3, $asText = false));echo '<br>'; // array ( 0 => 'Et libero debitis et dolorem nisi.', 1 => 'Quaerat consequuntur sit deserunt aperiam minima non optio vel.', 2 => 'Dolores omnis minima est.', )
echo $faker->paragraph($nbSentences = 3, $variableNbSentences = true),'<br>'; // Quis sit voluptatem facilis inventore eius et sed. Ut reprehenderit quas qui ducimus et et omnis cumque. Consequatur nostrum aut molestias commodi quis. Voluptates aut natus harum sit omnis eum.
var_export($faker->paragraphs($nb = 3, $asText = false));echo '<br>'; // array ( 0 => 'Aperiam deleniti quia et excepturi quisquam commodi. Fugit fugit non dolorem quidem voluptas repellat et. Odit eum voluptas molestiae ut architecto.', 1 => 'Sequi rerum aliquid dolorum in delectus. Et unde et asperiores excepturi veniam ab. Odit aut qui tempore quis nam aperiam nam. Ex autem dolor nesciunt.', 2 => 'Recusandae minima doloremque sit facilis minus est deserunt. Sed sint velit eos tempora ad. Non laborum laboriosam qui asperiores et. Eum impedit ea qui corporis alias non.', )
echo $faker->text($maxNbChars = 200),'<br>'; // Est quam aperiam et fuga iste architecto et. Sint officiis adipisci voluptatum pariatur. Voluptatem temporibus facilis corporis quod. Est rerum est eaque dolor mollitia a.
echo '<hr>';
//Person
echo $faker->title($gender = null|'male'|'female'),'<br>'; // Mr.
echo $faker->titleMale(),'<br>'; // Dr.
echo $faker->titleFemale(),'<br>'; // Miss
echo $faker->name($gender = null|'male'|'female'),'<br>'; // 戴伟
echo $faker->firstName($gender = null|'male'|'female'),'<br>'; // 智渊
echo $faker->firstNameMale(),'<br>'; // 伟
echo $faker->firstNameFemale(),'<br>'; // 红霞
echo $faker->lastName(),'<br>'; // 冯
echo '<hr>';
//Address
echo $faker->state(),'<br>'; //北京市
echo $faker->stateAbbr(),'<br>'; //吉
echo $faker->buildingNumber(),'<br>'; //35
echo $faker->city(),'<br>'; //石家庄
echo $faker->postcode(),'<br>'; //128800
echo $faker->address(),'<br>'; //太原双滦区
echo $faker->latitude($min = 3, $max = 53),'<br>'; //纬度
echo $faker->longitude($min = 73, $max = 135),'<br>'; //精度
echo '<hr>';
//PhoneNumber
echo $faker->phoneNumber(),'<br>'; //15881159460
echo '<hr>';
//Company
echo $faker->catchPhrase(),'<br>'; //康师傅方便面,好吃看得见。
echo $faker->company(),'<br>'; //思优网络有限公司
echo $faker->companySuffix(),'<br>'; //科技有限公司
echo $faker->companyPrefix(),'<br>'; //雨林木风计算机
echo '<hr>';
//Text
echo $faker->realText($maxNbChars = 50, $indexSize = 2); //Cat said, waving its right ear and left off.
echo '<hr>';
//DateTime
echo $faker->unixTime($max = 'now'),'<br>'; //655723035
print_r($faker->dateTime($max = 'now', $timezone = null));echo'<br>'; //DateTime Object ( [date] => 1971-12-08 03:19:39.000000 [timezone_type] => 3 [timezone] => PRC )
print_r($faker->dateTimeAD($max = 'now', $timezone = null));echo'<br>'; //DateTime Object ( [date] => 1907-10-08 18:26:02.000000 [timezone_type] => 3 [timezone] => PRC )
print_r($faker->iso8601($max = 'now'));echo'<br>'; //1974-08-18T01:47:19+0800
print_r($faker->date($format = 'Y-m-d', $max = 'now'));echo'<br>'; //1989-06-22
print_r($faker->time($format = 'H:i:s', $max = 'now'));echo'<br>'; //22:17:45
print_r($faker->dateTimeBetween($startDate = '-30 years', $endDate = 'now', $timezone = null));echo'<br>'; //DateTime Object ( [date] => 2011-06-23 23:24:57.000000 [timezone_type] => 3 [timezone] => PRC )
print_r($faker->dateTimeInInterval($startDate = '-30 years', $interval = '+ 5 days', $timezone = null));echo'<br>'; //DateTime Object ( [date] => 1988-08-11 19:31:44.000000 [timezone_type] => 3 [timezone] => PRC )
print_r($faker->dateTimeThisCentury($max = 'now', $timezone = null));echo'<br>'; //DateTime Object ( [date] => 1937-01-27 15:57:50.000000 [timezone_type] => 3 [timezone] => PRC )
print_r($faker->dateTimeThisDecade($max = 'now', $timezone = null));echo'<br>'; //DateTime Object ( [date] => 2016-10-08 12:49:37.000000 [timezone_type] => 3 [timezone] => PRC )
print_r($faker->dateTimeThisYear($max = 'now', $timezone = null));echo'<br>'; //DateTime Object ( [date] => 2017-08-28 17:00:52.000000 [timezone_type] => 3 [timezone] => PRC )
print_r($faker->dateTimeThisMonth($max = 'now', $timezone = null));echo'<br>'; //DateTime Object ( [date] => 2018-07-23 13:32:14.000000 [timezone_type] => 3 [timezone] => PRC )
echo $faker->amPm($max = 'now'),'<br>'; //上午
echo $faker->dayOfMonth($max = 'now'),'<br>'; //30
echo $faker->dayOfWeek($max = 'now'),'<br>'; //星期二
echo $faker->month($max = 'now'),'<br>'; //03
echo $faker->monthName($max = 'now'),'<br>'; //三月
echo $faker->year($max = 'now'),'<br>'; //1982
echo $faker->century(),'<br>'; //XV
echo $faker->timezone(),'<br>'; //Europe/Paris
echo '<hr>';
//Internet
echo $faker->email(),'<br>'; // et.quibusdam@gmail.com
echo $faker->safeEmail(),'<br>'; // atque_impedit@example.com
echo $faker->freeEmail(),'<br>'; // eveniet49@hotmail.com
echo $faker->freeEmailDomain(),'<br>'; // yahoo.com
echo $faker->safeEmailDomain(),'<br>'; // example.net
echo $faker->userName(),'<br>'; // todit
echo $faker->password(),'<br>'; // *0:E84>
echo $faker->slug(),'<br>'; // repellendus-occaecati-facere-suscipit
echo $faker->ipv4(),'<br>'; // 249.37.8.165
echo $faker->localIpv4(),'<br>'; // 192.168.23.124
echo $faker->ipv6(),'<br>'; // a724:326c:b6d7:7e6a:8f11:a1d2:263c:2cac
echo $faker->macAddress(),'<br>'; // 8C:41:91:95:C7:A1
echo '<hr>';
//UserAgent
echo $faker->userAgent(),'<br>'; // 'Mozilla/5.0 (Windows CE) AppleWebKit/5350 (KHTML, like Gecko) Chrome/13.0.888.0 Safari/5350'
echo $faker->chrome(),'<br>'; // 'Mozilla/5.0 (Macintosh; PPC Mac OS X 10_6_5) AppleWebKit/5312 (KHTML, like Gecko) Chrome/14.0.894.0 Safari/5312'
echo $faker->firefox(),'<br>'; // 'Mozilla/5.0 (X11; Linuxi686; rv:7.0) Gecko/20101231 Firefox/3.6'
echo $faker->safari(),'<br>'; // 'Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10_7_1 rv:3.0; en-US) AppleWebKit/534.11.3 (KHTML, like Gecko) Version/4.0 Safari/534.11.3'
echo $faker->opera(),'<br>'; // 'Opera/8.25 (Windows NT 5.1; en-US) Presto/2.9.188 Version/10.00'
echo $faker->internetExplorer(),'<br>'; // 'Mozilla/5.0 (compatible; MSIE 7.0; Windows 98; Win 9x 4.90; Trident/3.0)'
echo '<hr>';
//Payment
echo $faker->bank(),'<br>'; //中国光大银行,中文简体特有
echo $faker->creditCardType(),'<br>'; // MasterCard
echo $faker->creditCardNumber(),'<br>'; // 2662530999250526
print_r($faker->creditCardExpirationDate());echo '<br>'; // DateTime Object ( [date] => 2019-10-10 02:45:11.000000 [timezone_type] => 3 [timezone] => PRC )
echo $faker->creditCardExpirationDateString(),'<br>'; // 07/21
print_r($faker->creditCardDetails());echo '<br>'; // Array ( [type] => Visa Retired [number] => 4532247850132 [name] => 冀婷 [expirationDate] => 09/20 )
echo $faker->iban('china'),'<br>'; // CHINA57864778150598277815160149
echo $faker->swiftBicNumber(),'<br>'; // OBWULDLM
echo '<hr>';
//Color
echo $faker->hexcolor(),'<br>'; // #ba6426
echo $faker->rgbcolor(),'<br>'; // 216,5,70
print_r($faker->rgbColorAsArray());echo '<br>'; // Array ( [0] => 111 [1] => 5 [2] => 180 )
echo $faker->rgbCssColor(),'<br>'; // rgb(242,111,249)
echo $faker->safeColorName(),'<br>'; // 黄色
echo $faker->colorName(),'<br>'; // 亮岩灰
echo '<hr>';
//File
echo $faker->fileExtension(),'<br>'; // 'avi'
echo $faker->mimeType(),'<br>'; // 'video/x-msvideo'
// Copy a random file from the source to the target directory and returns the fullpath or filename
//需要存在tmp文件夹并且里面有文件,会从tmp中随机取一张放到tmp2中。
echo $faker->file($sourceDir = './tmp', $targetDir = './tmp2'),'<br>'; // ./tmp2\a5ab657a-ba2d-393a-9f6b-3e9f52cfff7d.png
echo $faker->file($sourceDir, $targetDir, false),'<br>'; // 3dfd550e-b2ed-31b6-ba93-b1a14eae9396.png
echo '<hr>';
//Image
//同类网站还有,placeimg.com
echo $faker->imageUrl($width = 640, $height = 480),'<br>'; // 'http://lorempixel.com/640/480/'
echo $faker->imageUrl($width, $height, 'cats'),'<br>'; // 'http://lorempixel.com/800/600/cats/'
echo $faker->imageUrl($width, $height, 'cats', true, 'Faker'),'<br>'; // 'http://lorempixel.com/800/400/cats/Faker'
echo $faker->imageUrl($width, $height, 'cats', true, 'Faker', true),'<br>'; // 'http://lorempixel.com/grey/800/400/cats/Faker/' Monochrome image
/*
//图片会下载到tmp3文件夹中
echo $faker->image($dir = './tmp3', $width = 640, $height = 480),'<br>'; // '/tmp/13b73edae8443990be1aa8f1a483bc27.jpg'
echo $faker->image($dir, $width, $height, 'cats'),'<br>'; // 'tmp/13b73edae8443990be1aa8f1a483bc27.jpg' it's a cat!
echo $faker->image($dir, $width, $height, 'cats', false),'<br>'; // '13b73edae8443990be1aa8f1a483bc27.jpg' it's a filename without path
echo $faker->image($dir, $width, $height, 'cats', true, false),'<br>'; // it's a no randomize images (default: `true`)
echo $faker->image($dir, $width, $height, 'cats', true, true, 'Faker'),'<br>'; // 'tmp/13b73edae8443990be1aa8f1a483bc27.jpg' it's a cat with 'Faker' text. Default, `null`.
*/
echo '<hr>';
//Uuid
echo $faker->uuid(),'<br>'; // 5f232e4d-fe57-367e-9d04-c5e161f035f7
echo '<hr>';
//Barcode,ean商品条形码,isbn图片条形码
echo $faker->ean13(),'<br>'; // '4006381333931'
echo $faker->ean8(),'<br>'; // '73513537'
echo $faker->isbn13(),'<br>'; // '9790404436093'
echo $faker->isbn10(),'<br>'; // '4881416324'
echo '<hr>';
//Miscellaneous
echo $faker->boolean(),'<br>'; // false
echo $faker->boolean($chanceOfGettingTrue = 50),'<br>'; // true
echo $faker->md5(),'<br>'; // 'de99a620c50f2990e87144735cd357e7'
echo $faker->sha1(),'<br>'; // 'f08e7f04ca1a413807ebc47551a40a20a0b4de5c'
echo $faker->sha256(),'<br>'; // '0061e4c60dac5c1d82db0135a42e00c89ae3a333e7c26485321f24348c7e98a5'
echo $faker->locale(),'<br>'; // en_UK
echo $faker->countryCode(),'<br>'; // UK
echo $faker->languageCode(),'<br>'; // en
echo $faker->currencyCode(),'<br>'; // EUR
echo $faker->emoji(),'<br>'; //
faker php测试数据库生成的更多相关文章
- faker php测试数据库生成2
因内容太长,被csdn截断了,只好把另外的内容写到这里. //Biased // 在10到20之间得到一个随机数字,有更大的几率接近20 echo $faker->biasedNumberBet ...
- python+Django+test 测试数据库生成报错
前提: 使用Django自带的test进行单元测试. 问题描述: 运行:python manage.py test,报错,出现数据库乱码的现象,报错如下: Creating test database ...
- 快速生成500W测试数据库
快速生成500W测试数据库: 创建测试表: DROP TABLE IF EXISTS `user`; CREATE TABLE `user` ( `id` int(10) NOT NULL AUTO_ ...
- 【转】Visual Studio 2010在数据库生成随机测数据
测试在项目中是很重要的一个环节,在Visual Studio 2010中,在测试方面已经有很好的支持了,比如有单元测试,负载测试等等.在数据测试的方面,Visual Studio 2010,还支持对数 ...
- .NET Core实战项目之CMS 第十一章 开发篇-数据库生成及实体代码生成器开发
上篇给大家从零开始搭建了一个我们的ASP.NET Core CMS系统的开发框架,具体为什么那样设计我也已经在第十篇文章中进行了说明.不过文章发布后很多人都说了这样的分层不是很合理,什么数据库实体应该 ...
- 使用benchmarkSQL测试数据库的TPCC
压力测试是指在MySQL上线前,需要进行大量的压力测试,从而达到交付的标准.压力测试不仅可以测试MySQL服务的稳定性,还可以测试出MySQL和系统的瓶颈. TPCC测试:Transaction Pr ...
- MySQL数据库生成数据库说明文档
在半年多前为一个MySQL数据库生成过数据库说明文档,今天要重新生成一份,但是发现完全不记得当时是怎么生成的,只能在网上搜索重来一遍,所以今天特意把这个过程记录一下. 一.安装 使用MySQL数据库表 ...
- Rafy 框架 - 为数据库生成注释
当开发者使用 CodeFirst 开发模式,编写了大量的实体类,在代码中编写了完整的类型注释和属性注释,并自动生成数据库后,往往需要把实体类型和实体属性上的注释同时生成到对应的数据库表及字段上.这样, ...
- Asp.Net MVC 从数据库生成代码(包括页面)
项目需要,数据库已经设计完成,需要生成相关的数据访问代码和页面. 参考:http://www.tracefact.net/asp-net/aspnetmvc-model-part1.aspx http ...
随机推荐
- C语言复习---获取最小公倍数(公式法:两个数相乘等于最小公倍数乘以最大公约数)
公式法:两个数相乘等于最小公倍数乘以最大公约数 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib ...
- decimal, float 和double
阿里的 Java 手册里写着: 6. [强制] 小数类型为 decimal,禁止使用 float 和 double. 说明:float 和 double 在存储的时候,存在精度损失的问题,很可能在值的 ...
- bzoj千题计划203:bzoj3994: [SDOI2015]约数个数和
http://www.lydsy.com/JudgeOnline/problem.php?id=3994 设d(x)为x的约数个数,给定N.M,求 用到的一个结论: 证明: 枚举n的约数i,枚举m的约 ...
- postman断言的几种方式(二)
1.检查响应体是否包含字符串 pm.test("Body matches string", function () { pm.expect(pm.response.text()). ...
- 通俗易懂之Tensorflow summary类 & 初识tensorboard
前面学习的cifar10项目虽小,但却五脏俱全.全面理解该项目非常有利于进一步的学习和提高,也是走向更大型项目的必由之路.因此,summary依然要从cifar10项目说起,通俗易懂的理解并运用sum ...
- 【ARTS】01_01_左耳听风-20181112~1116
每周至少做一个 leetcode 的算法题.阅读并点评至少一篇英文技术文章.学习至少一个技术技巧.分享一篇有观点和思考的技术文章.(也就是 Algorithm.Review.Tip.Share 简称A ...
- springcloud微服务架构搭建:服务调用
spring-cloud调用服务有两种方式,一种是Ribbon+RestTemplate, 另外一种是Feign. Ribbon是一个基于HTTP和TCP客户端的负载均衡器,类似nginx反向代理,可 ...
- jenkins+jmeter结合使用
事件背景:想实现jmeter每30分钟执行一次,但是夜里不能人工操作,结果度娘,汇总结果如下 1.配置jmeter测试环境,注意修改Jmeter的bin目录下jmeter.properties文件的配 ...
- SpringBoot修改默认端口号,session超时时间
有时候我们可能需要启动不止一个SpringBoot,而SpringBoot默认的端口号是8080,所以这时候我们就需要修改SpringBoot的默认端口了.修改SpringBoot的默认端口有两种方式 ...
- 转:vue2.0 keep-alive最佳实践
转载至:https://segmentfault.com/a/1190000008123035 1.基本用法 vue2.0提供了一个keep-alive组件用来缓存组件,避免多次加载相应的组件,减少性 ...