faker php测试数据库生成2
因内容太长,被csdn截断了,只好把另外的内容写到这里。
//Biased
// 在10到20之间得到一个随机数字,有更大的几率接近20
echo $faker->biasedNumberBetween($min = 10, $max = 20, $function = 'sqrt'),'<br>';
echo '<hr>';
//HtmlLorem
//生成不超过2个级别的HTML文档,在任何级别上不超过3个元素。
echo $faker->randomHtml(2,3),'<br>';
echo '<hr>';
三个特别的修饰方法:
//提供了三个特殊的修饰方法,unique(),optional(),和valid(),被任何provider之前调用。
//unique()强制提供者返回唯一值,当没有新的唯一值可以生成时,抛出异常
//加入$reset = true,会自动加前缀,避免异常
$values = array();
for($i = 0; $i < 15; $i++){
$values [] = $faker -> unique($reset = true) -> randomDigit;
}
print_r($values);
//optional()有时会绕过提供程序而返回默认值(默认为NULL)
$values = array();
for ($i=0; $i < 10; $i++) {
$values []= $faker->optional()->randomDigit;
}
var_dump($values); // [1, 4, null, 9, 5, null, null, 4, 6, null]
// optional()接受权重参数以指定接收默认值的概率。
// 0将始终返回默认值; 1将始终返回提供者。默认权重为0.5(50%几率)。
$faker->optional($weight = 0.1)->randomDigit; // 90% 的可能性为 NULL
$faker->optional($weight = 0.9)->randomDigit; // 10% 的可能性为 NULL
//optional()接受默认参数以指定要返回的默认值。
$faker->optional($weight = 0.5, $default = false)->randomDigit; // 50% 的可能性为 FALSE
$faker->optional($weight = 0.9, $default = 'abc')->word; // 10% 的可能性为 'abc'
//passthrough()只返回指定的任何值。
$faker->optional()->passthrough(mt_rand(5, 15));
//valid()仅根据传递的验证函数接受有效值
$values = array();
$evenValidator = function($digit) {
return $digit % 2 === 0; //是偶数才返回
};
for($i=0; $i < 10; $i++) {
$values []= $faker->valid($evenValidator)->randomDigit;
}
print_r($values); // [0, 4, 8, 4, 2, 6, 0, 8, 8, 6]
//就像unique(),valid()在无法生成有效值时抛出溢出异常
$values = array();
try {
//$faker->valid($evenValidator)->randomElement(1, 3, 5, 7, 9);
} catch (\OverflowException $e) {
echo "Can't pick an even number in that set!";
}
使用自己的数据
在faker->src->Faker->Provider->zh_CN文件夹下新建My.php
参考系统自带的数据格式编写,My.php内容如下:
<?php
namespace Faker\Provider\zh_CN;
class My extends \Faker\Provider\Base
{
protected static $mySite = array(
'www.aaa.com',
'www.bbb.com',
'www.ccc.com',
'www.ddd.com'
);
public function mySite()
{
return static::randomElement(static::$mySite);
}
}
在项目中的使用:
//调用自定义的内容先要加入
$faker -> addProvider(new \Faker\provider\zh_CN\My($faker));
echo $faker->mySite;
faker php测试数据库生成2的更多相关文章
- faker php测试数据库生成
官方地址:https://github.com/fzaninotto/Faker 使用方式: 1.composer直接下载: composer require fzaninotto/faker 2.将 ...
- 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 ...
随机推荐
- react入门-refs
vue有ref来获取template里面的子组件/子元素,react当然也有: <!DOCTYPE html> <html lang="en"> <h ...
- sublime Text不能安装插件的解决办法
我的sublime Text不能安装插件,提示如下错误 解决办法如下: 1.点击Preferences > Browse Packages菜单 2.进入打开的目录的“上层目录”,然后再进入Ins ...
- 转:iOS-生成Bundle包-引入bundle-使用bundle
在我们使用第三方框架时,常常看到XXX.bundle的文件. 我们找到该文件,显示包内容,大致看到很多资源文件:图片.配置文本.XIB文件…… 什么是Bundle文件? 简单理解,就是资源文件包. ...
- 在CentOS上导出JVM内存信息
首先看下Tomcat的进程Id: [root@iZ25Z ~]# ps aux | grep java www 2111 4.0 23.5 1637648 452756 ? Sl 10:12 4:35 ...
- F - Friends ZOJ - 3710(暴力)
题目链接:https://cn.vjudge.net/contest/280949#problem/F 题目大意:给你n个人,然后给你m个关系,每个关系输入t1, t2 .代表t1和t2是朋友关系(双 ...
- python 入门基础22 --复习 面向对象
面向过程编程思想: 核心:过程 过程指的是解决问题的具体步骤,即先干什么再干什么. 基于该编程思想编写程序,相当于一条流水线,一种机械式的思维方式. 面向对象编程思想: 核心:对象 对象指的是数据与方 ...
- lucene入门创建索引——(二)
1.程序宏观结构图
- MTD应用学习札记【转】
转自:https://blog.csdn.net/lh2016rocky/article/details/70885421 今天做升级方案用到了mtd-utils中的flash_eraseall和fl ...
- springcloud使用Zuul构建微服务网关入门
为什么要使用微服务网关 不同的微服务一般会经过不同的网络地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求. 如果让客户端直接与各个微服务通信,会有以下的问题: 客户端会多次请求不同的微 ...
- js array数组检测方式
typeof var arr = [1,2,3]; console.log(typeof arr);//'object' 数组的本质是一种特殊的对象,所以返回'object'.typeof运算符只能用 ...