安装

laravel中已经自动集成,无需手动安装。如需在其他地方使用,可使用以下命令进行安装。

  1. composer require fzaninotto/faker

Faker指定中文支持

可通过在 config/app.php 增加如下配置使其支持中文:

  1. 'faker_locale' => 'zh_CN',

基本用法

Formatters 格式化器
Faker\Provider\Base 基本
  1. $randomDigit = $faker->randomDigit;//生成0-9之间的随机数
  2. $randomDigitNotNull = $faker->randomDigitNotNull;//生成1-9之间的随机数
  3. $randomNumber = $faker->randomNumber(5, true);//生成5位整数,true表示严格模式,即只能5位
  4. $randomFloat = $faker->randomFloat(2, 0, 10);//生成浮点数,两位小数点,范围是0-10之间
  5. $numberBetween = $faker->numberBetween(0, 100);//生成随机整数,范围是0-100之间
  6. $randomLetter = $faker->randomLetter;//返回a-z之间任意的一个小写字符
  7. $randomElements = $faker->randomElements(['a', 'b', 'c', 'd'], 2);//返回数组中的随机两个元素
  8. $randomElement = $faker->randomElement(['aa', 'bb', 'cc', 'dd']);//随机返回数组中的一个元素
  9. $suffle = $faker->shuffle('hello, world'); //将字串中的字符打乱返回
  10. $suffle = $faker->shuffle(['aa', 'bb', 'cc', 'dd']); //将数组中的元素打乱返回
  11. $numerify = $faker->numerify('Hello #####');//#####替换为随机数字,输出类似:Hello 03501
  12. $lexify = $faker->lexify('Hello ???');//???替换为3个随机小写字符,输出类似:Hello krg
  13. $bothify = $faker->bothify('hello ##??');//#替换为随机数字,?替换为随机小写字符.输出类似:hello 15cr
  14. $asciify = $faker->asciify('hello *****');//*替换为随机字符,输出类似:hello 5Ynt[
  15. $regexify = $faker->regexify('[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}');//根据正则表达式返回字串
Faker\Provider\Lorem 文本
  1. $word = $faker->word;//返回一个单词
  2. $words = $faker->words(3, false);//返回3个单词,false表示返回一个数组;true表示返回一个字符串,单词之间用空格分开
  3. $sentence = $faker->sentence(5, true);//返回一个句子,false表示只能含有5个单词,true表示可以在5个单词左右
  4. $sentences = $faker->sentences(3, false);//返回3条句子,false表示返回一个数组,true表示将三条句子拼成一条返回
  5. $paragraph = $faker->paragraph(3, true);//返回一个段落,由3条句子组成。false表示只能有3条句子,true表示可以在3条句子左右
  6. $paragraphs = $faker->paragraphs(4, false);//返回4个段落。false表示返回一个数组,true表示将段落拼接在一起,并且用换行符分割
  7. $text = $faker->text(200);//返回一段文本,最多只能含有200个字符
Faker\Provider\en_US\Person 人物
  1. $title = $faker->title('female');//参数:title($gender = null|'male'|'female') .返回称呼。例如:Mrs.|Prof.|Dr.
  2. $titleMale = $faker->titleMale;//返回男性称呼
  3. $titleFemale = $faker->titleFemale;//返回女性称呼
  4. $name = $faker->name('female');//参数:name($gender = null|'male'|'female') .返回姓名
  5. $firstName = $faker->firstName('female');//参数:firstName($gender = null|'male'|'female') .返回名
  6. $firstNameMale = $faker->firstNameMale;//男性名字
  7. $firstNameFemale = $faker->firstNameFemale;//女性名字
  8. $lastName = $faker->lastName;//姓
Faker\Provider\en_US\Address 地址
  1. $cityPrefix = $faker->cityPrefix;//城市前缀.如:Lake
  2. $secondaryAddress = $faker->secondaryAddress;//二级地址.如:Suite 061
  3. $state = $faker->state;//州、省(如:Colorado、四川省)
  4. $stateAbbr = $faker->stateAbbr;//省份简称.如:晋、蒙、浙、冀
  5. $citySuffix = $faker->citySuffix;//城市后缀.如:side、land、port、Ville
  6. $streetSuffix = $faker->streetSuffix;//街道后缀.如:Ramp、Plains
  7. $buildingNumber = $faker->buildingNumber;//建筑物编号
  8. $city = $faker->city;//城市
  9. $streetName = $faker->streetName;//街道名称
  10. $streetAddress = $faker->streetAddress;//街道地址
  11. $postcode = $faker->postcode;//邮政编码
  12. $address = $faker->address;//地址(城市+区)
  13. $country = $faker->country;//国家
  14. $latitude = $faker->latitude;//纬度 latitude($min = -90, $max = 90)
  15. $longitude = $faker->longitude;//经度 longitude($min = -180, $max = 180)
Faker\Provider\en_US\PhoneNumber 电话号码
  1. $phoneNumber = $faker->phoneNumber;//手机号码
  2. $tollFreePhoneNumber = $faker->tollFreePhoneNumber;
  3. $e164PhoneNumber = $faker->e164PhoneNumber;
Faker\Provider\en_US\Company 公司
  1. $catchPhrase = $faker->catchPhrase;//口号
  2. $bs = $faker->bs;
  3. $company = $faker->company;//公司名称
  4. $companySuffix = $faker->companySuffix;//公司名称后缀
  5. $jobTitle = $faker->jobTitle;//职称
Faker\Provider\en_US\Text 文本
  1. $realText = $faker->realText();//一段叙事文本
Faker\Provider\DateTime 日期时间
  1. $unixTime = $faker->unixTime;//返回随机时间戳
  2. $unixTime = $faker->unixTime('now');//返回随机时间戳 可选最后截止时间
  3. $dateTime = $faker->dateTime;//返回一个随机的DateTime对象
  4. $dateTime = $faker->dateTime('now', 'PRC');//返回一个随机的DateTime对象,可选择最后截止时间和时区
  5. $dateTimeAD = $faker->dateTimeAD;//返回一个随机的DateTime对象
  6. $dateTimeAD = $faker->dateTimeAD('now', 'PRC');//返回一个随机的DateTime对象,可选择最后截止时间和时区
  7. $iso8601 = $faker->iso8601;//返回一个随机的字符串形式的时间
  8. $iso8601 = $faker->iso8601('now');//返回一个随机的字符串形式的时间,可选择最后截止时间
  9. $date = $faker->date("Y-m-d H:i:s", 'now');//指定格式返回时间,可选择最后截止时间
  10. $time = $faker->time('Y-m-d H:i:s', 'now');//(同上)指定格式返回时间,可选择最后截止时间
  11. $dateTimeBetween = $faker->dateTimeBetween('2019-01-01', 'now', 'PRC');//返回指定时间区间的DateTime对象,可选时区
  12. $dateTimeInInterval = $faker->dateTimeInInterval('-5 years', '+5 days', 'PRC');//返回指定时间区间的DateTime对象,可选时区(第一个参数:开始时间,第二个参数:时间范围)
  13. $dateTimeThisCentury = $faker->dateTimeThisCentury;//返回一个本世纪内的DateTime对象
  14. $dateTimeThisCentury = $faker->dateTimeThisCentury('1950-01-01', 'PRC');//返回一个本世纪内的DateTime对象.指定截止时间和时区
  15. $dateTimeThisDecade = $faker->dateTimeThisDecade;//返回一个前十年内的DateTime对象
  16. $dateTimeThisDecade = $faker->dateTimeThisDecade('2015-01-01', 'PRC');//返回一个前十年内的DateTime对象.指定允许的最后时间和时区
  17. $dateTimeThisYear = $faker->dateTimeThisYear;//返回一个前一年内的DateTime对象
  18. $dateTimeThisYear = $faker->dateTimeThisYear('now', 'PRC');//返回一个前一年内的DateTime对象.指定允许的最后时间和时区
  19. $dateTimeThisMonth = $faker->dateTimeThisMonth;//返回一个前一个月内的DateTime对象
  20. $dateTimeThisMonth = $faker->dateTimeThisMonth('-15 days', 'PRC');//返回一个前一个月内的DateTime对象.指定允许的最后时间和时区
  21. $amPm = $faker->amPm;//上午/下午
  22. $dayOfMonth = $faker->dayOfMonth;//返回几号
  23. $dayOfWeek = $faker->dayOfWeek;//返回星期几
  24. $month = $faker->month;//返回月份
  25. $monthName = $faker->monthName;//返回月份名称
  26. $year = $faker->year;//返回年份
  27. $year = $faker->year('2000-01-01');//返回年份.可指定最后截止日期
  28. $timezone = $faker->timezone;//返回时区
Faker\Provider\Internet 互联网
  1. $email = $faker->email;//返回一个随机邮箱
  2. $safeEmail = $faker->safeEmail;//返回一个以@example.com结尾的安全邮箱
  3. $freeEmail = $faker->freeEmail;//返回一个随机邮箱
  4. $companyEmail = $faker->companyEmail;//返回企业邮箱(中文语言包下不可用)
  5. $freeEmailDomain = $faker->freeEmailDomain;//返回一个邮件域名
  6. $safeEmailDomain = $faker->safeEmailDomain;//返回安全的邮件域名
  7. $userName = $faker->userName;//用户名
  8. $password = $faker->password;//密码
  9. $domainName = $faker->domainName;//域名(中文语言包下不可用)
  10. $domainWord = $faker->domainWord;//不带后缀的域名(中文语言包下不可用)
  11. $tld = $faker->tld;//域名后缀:如com、org(中文语言包下不可用)
  12. $url = $faker->url;//返回一个随机url(中文语言包下不可用)
  13. $slug = $faker->slug;
  14. $ipv4 = $faker->ipv4;//返回一个ipv4地址
  15. $ipv6 = $faker->ipv6;//返回一个ipv6地址
  16. $localIpv4 = $faker->localIpv4;
  17. $macAddress = $faker->macAddress;//mac地址
Faker\Provider\UserAgent 用户代理
  1. $userAgent = $faker->userAgent;//返回一个随机的用户代理信息
  2. $chrome = $faker->chrome;//返回一个chrome浏览器的用户代理信息
  3. $firefox = $faker->firefox;//返回一个firefox浏览器的用户代理信息
  4. $safari = $faker->safari;//返回一个safari浏览器的用户代理信息
  5. $opera = $faker->opera;//返回一个opera浏览器的用户代理信息
  6. $internetExplorer = $faker->internetExplorer;//返回一个internetExplorer浏览器的用户代理信息
Faker\Provider\Payment 支付
  1. $creditCardType = $faker->creditCardType;//信用卡类型
  2. $creditCardNumber = $faker->creditCardNumber;//信用卡号
  3. $creditCardExpirationDate = $faker->creditCardExpirationDate;//信用卡到期日 (DateTime对象)
  4. $creditCardExpirationDateString = $faker->creditCardExpirationDateString;//信用卡到期日期字符串
  5. $creditCardDetails = $faker->creditCardDetails;//信用卡详情(数组)
  6. $swiftBicNumber = $faker->swiftBicNumber;
  7. $iban = $faker->iban;//国际银行账户
Faker\Provider\Color 颜色
  1. $hexcolor = $faker->hexcolor;//十六进制的随机色:'#fa3cc2'
  2. $rgbcolor = $faker->rgbcolor;//RGB格式的随机色(字串形式):'0,255,122'
  3. $rgbColorAsArray = $faker->rgbColorAsArray;//RGB格式的随机色(数组形式):array(0,255,122)
  4. $rgbCssColor = $faker->rgbCssColor;//RGB格式的随机色的css表示:'rgb(0,255,122)'
  5. $safeColorName = $faker->safeColorName;//一个安全的随机色名称
  6. $colorName = $faker->colorName;//随机色名称
Faker\Provider\File 文件
  1. $fileExtension = $faker->fileExtension;//文件后缀
  2. $mimeType = $faker->mimeType;//mime类型
  3. // 将一个随机文件从源文件复制到目标目录,并返回fullpath
  4. $file = $faker->file($sourceDir = './up1', $targetDir = './up2');
  5. // 将一个随机文件从源文件复制到目标目录,并返回basename
  6. $file = $faker->file($sourceDir = './up1', $targetDir = './up2', false);
Faker\Provider\Image 图片
  1. $imageUrl = $faker->imageUrl();//https://lorempixel.com/640/480/?93028
  2. $imageUrl = $faker->imageUrl(320, 320, 'cats');//https://lorempixel.com/320/320/cats/?68416
  3. $imageUrl = $faker->imageUrl(320, 320, 'cats', true, 'Faker');//https://lorempixel.com/320/320/cats/Faker/?68118
  4. $imageUrl = $faker->imageUrl(320, 320, 'cats', true, 'Faker', true);//https://lorempixel.com/gray/320/320/cats/Faker/?28732
  5. //生成图片并保存到本地 '/tmp/13b73edae8443990be1aa8f1a483bc27.jpg'
  6. $image = $faker->image('./tmp', 320, 320);
  7. //设置类别并生成图片保存到本地 'tmp/13b73edae8443990be1aa8f1a483bc27.jpg'
  8. $image = $faker->image('./tmp', 320, 320, 'cats');
  9. //设置类别并生成图片保存到本地,只返回文件名 '13b73edae8443990be1aa8f1a483bc27.jpg'
  10. $image = $faker->image('./tmp', 320, 320, 'cats', false);
  11. // 生成没有随机化的图像
  12. $image = $faker->image('./tmp', 320, 320, 'cats', true, false);
  13. //生成图片并加上水印字体 'tmp/13b73edae8443990be1aa8f1a483bc27.jpg'
  14. $image = $faker->image('./tmp', 320, 320, 'cats', true, true, 'Faker');
Faker\Provider\Uuid UUID
  1. $uuid = $faker->uuid;//生成一个uuid
Faker\Provider\Barcode 条形码
  1. $ean13 = $faker->ean13;//8105964964473
  2. $ean8 = $faker->ean8;//05994441
  3. $isbn13 = $faker->isbn13;//9780971408739
  4. $isbn10 = $faker->isbn10;//0813387299
Faker\Provider\Miscellaneous 各种各样的
  1. $boolean = $faker->boolean;//生成一个布尔值
  2. $md5 = $faker->md5;//生成一个md5码
  3. $sha1 = $faker->sha1;//生成一个sha1
  4. $sha256 = $faker->sha256;//生成一个sha256
  5. $locale = $faker->locale;//生成一个地区编码:如zh_CN
  6. $countryCode = $faker->countryCode;//生成一个国家编码。如:UK
  7. $languageCode = $faker->languageCode;//生成一个语言编码.如:en
  8. $currencyCode = $faker->currencyCode;//生成一个货币代码.如:EUR
  9. $emoji = $faker->emoji;//生成一个emoji表情
Faker\Provider\Biased 偏向的
  1. //得到10到20之间的随机数,并且更多机会接近20
  2. $biasedNumberBetween = $faker->biasedNumberBetween($min = 10, $max = 20, $function = 'sqrt');
Faker\Provider\HtmlLorem html文本
  1. //生成不超过2级深度的HTML文档,并且在任何级别上都不超过3个元素。
  2. $randomHtml = $faker->randomHtml(2, 3);

Language specific formatters 特定于语言的格式器

Faker\Provider\zh_CN\Payment
  1. // 生成一个随机的银行名称(基于真实的中国银行的列表)
  2. echo $faker->bank; // '中国建设银行'
Faker\Provider\zh_TW\Person
  1. // Generates a random personal identify number
  2. echo $faker->personalIdentityNumber; // A223456789
Faker\Provider\zh_TW\Company
  1. // Generates a random VAT / Company Tax number
  2. echo $faker->VAT; //23456789

faker数据填充详解的更多相关文章

  1. 【Laravel 】faker数据填充详解

    安装 在laravel中已经自动集成,无需手动安装.如需在其他地方使用,可使用以下命令进行安装. composer require fzaninotto/faker 为Faker指定中文支持 可通过在 ...

  2. ContentProvider数据访问详解

    ContentProvider数据访问详解 Android官方指出的数据存储方式总共有五种:Shared Preferences.网络存储.文件存储.外储存储.SQLite,这些存储方式一般都只是在一 ...

  3. 【HANA系列】SAP HANA XS使用JavaScript数据交互详解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用Jav ...

  4. JVM 运行时数据区详解

    一.运行时数据区 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同数据区域. 1.有一些是随虚拟机的启动而创建,随虚拟机的退出而销毁,所有的线程共享这些数据区. 2.第二种则 ...

  5. 学习《深度学习与计算机视觉算法原理框架应用》《大数据架构详解从数据获取到深度学习》PDF代码

    <深度学习与计算机视觉 算法原理.框架应用>全书共13章,分为2篇,第1篇基础知识,第2篇实例精讲.用通俗易懂的文字表达公式背后的原理,实例部分提供了一些工具,很实用. <大数据架构 ...

  6. 【HANA系列】【第一篇】SAP HANA XS使用JavaScript数据交互详解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列][第一篇]SAP HANA XS ...

  7. 3dTiles 数据规范详解[1] 介绍

    版权:转载请带原地址.https://www.cnblogs.com/onsummer/p/12799366.html @秋意正寒 Web中的三维 html5和webgl技术使得浏览器三维变成了可能. ...

  8. [jvm]运行时数据区域详解

    了解虚拟机是怎么使用内存的,有助于我们解决和排查内存泄漏和溢出方面的问题.详解java虚拟机内存的各个区域,分析这些区域的作用服务对象以及可能发生的问题. 一.运行时数据区域 java虚拟机在执行ja ...

  9. HTTP数据包详解

     无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看. 阅读目录 ...

随机推荐

  1. J2EE知识总结——面试、笔试

    9.2 jdk 1.8的新特性(核心是Lambda 表达式) 参考链接:http://www.bubuko.com/infodetail-690646.html (1)接口的默认方法 (给接口添加一个 ...

  2. BZOJ 2157: 旅游 (结构体存变量)

    用结构体存变量好像确实能提高运行速度,以后就这么写数据结构了 Code: #include <cstdio> #include <algorithm> #include < ...

  3. The GuidRepresentation for the reader is CSharpLegacy, which requires the binary sub type to be Uuid

    使用客户端链接MongoDb报错 The GuidRepresentation for the reader is CSharpLegacy, which requires the binary su ...

  4. sh_10_分隔线模块

    sh_10_分隔线模块 def print_line(char, times): """打印单行分隔线 :param char: 分隔字符 :param times: 重 ...

  5. express中redirect传递数据

    redirect中无法跟render一样传递数据 在index中,可以通过session重定向到login 在login.js 中获取req.session,渲染到login.ejs中,最后js获取

  6. zabbix分布式监控环境搭建

    本次测试主要是在 centos 系统环境实践,测试内容:集群多台服务器资源监控做后续铺垫.zabbix的简介和自身的特点.在这就不阐述了 查询防火墙状态service iptables status停 ...

  7. Python深度学习读书笔记-3.神经网络的数据表示

    标量(0D 张量) 仅包含一个数字的张量叫作标量(scalar,也叫标量张量.零维张量.0D 张量).在Numpy 中,一个float32 或float64 的数字就是一个标量张量(或标量数组).你可 ...

  8. python - 标准库:subprocess模块

    subprocess的目的就是启动一个新的进程并且与之通信. subprocess模块中只定义了一个类: Popen. subprocess.Popen(args, bufsize=0, execut ...

  9. CentOS7配置静态IP中NM_CONTROLLED不要设置为NO

    这个是网络管理的,之前一直是把这个选项设置为NO,然后在CentOS其中,每次重启网络服务都会失败,后来把这个设为YES就可以了.

  10. 【MAC】 命令行解压缩 rar 文件

    使用Mac解压rar文件很简单,总共分2步.step1:安装解压工具,step2:解压 1.使用Homebrew安装unrar brew install unrar 2.cd到rar文件的目录下,然后 ...