Faker:php随机数据产生类库_PHP_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > PHP > Faker:php随机数据产生类库

Faker:php随机数据产生类库

 2017/7/29 23:38:41  xieye  程序员俱乐部  我要评论(0)
  • 摘要:今日:2017-07-29Faker:一个php类库,使用起来也是极其简单。该类库主要作用是:一个数据库刚建立后,希望给里面插入一些随机数据,便于测试。有时也可以用于单元测试,利用随机种子固定的函数,具体参加官网:https://github.com/fzaninotto/Faker随机生成的广告语非常有趣哦。composer安装:放在require中亦可,随意吧。"require-dev":{"fzaninotto/faker":"1.6.0"}demo:<
  • 标签:PHP 数据
今日:2017-07-29
Faker:一个php类库,使用起来也是极其简单。
该类库主要作用是:一个数据库刚建立后,希望给里面插入一些随机数据,便于测试。有时也可以用于单元测试,利用随机种子固定的函数,具体参加官网:https://github.com/fzaninotto/Faker


随机生成的广告语非常有趣哦。

composer安装:放在require中亦可,随意吧。
class="java" name="code">
"require-dev": {
        "fzaninotto/faker":"1.6.0"
}


demo:
<?php
// 需根据本机的autoload.php位置修改
require __DIR__ . "/../vendor/autoload.php";

$faker = Faker\Factory::create ( "zh_CN" );//中文语种

//临时性屏蔽警告,必须的。
$ini_get_display_errors = ini_get("display_errors");
 ini_set('display_errors', 0);
echo <<<html
[list=1]
		[*]需同代码一样临时屏蔽警告信息,函数结束后再打开
		[*]注意每项都是单独的,和其他项无关联。所以地理位置那里貌似看起来不合理
		[*]本页面执行时间长,是因为调太多项,少的话很快
		[*]类库还有一些额外功能,例如确保不重复结果,关联orm等,但都不太重要
		[*]官网:https://github.com/fzaninotto/Faker
[/list]
html;

foreach ( range ( 1, 2 ) as $v ) {
	$arr = [ 
			// 个人信息
			'姓名 name' => $faker->name,
			'姓 lastName' => $faker->lastName,
			'名 firstName' => $faker->firstName,
			'手机 mobile' => $faker->phoneNumber,
			'信用卡信息数组 creditCardDetails'=> $faker->creditCardDetails,
			
			// 地理位置
			'纬度 latitude' =>$faker->latitude, 
			'经度 longitude' =>$faker->longitude,
			'国家 country' => $faker->country,
			'国家代码 countryCode' => $faker->countryCode,
			'邮政编码:postcode'=> $faker->postcode,
			'地址 address' => $faker->address,
			'城市 city' => $faker->city,
			'省 state'=> $faker->state,
			'省简称 stateAbbr' =>$faker->stateAbbr,
			
			// 公司,银行,广告语
			'公司后缀 companySuffix'=> $faker->companySuffix,
			'公司 company'=> $faker->company,
			'银行 bank' => $faker->bank,
 			'广告语 catchPhrase'=>$faker->catchPhrase,
			
			// 时间
			'unixTime' => $faker->unixTime,
			'year' => $faker->year,
			'month' => $faker->month,
			'dayOfMonth'=> $faker->dayOfMonth,
			'date' =>$faker->date,
			'time' =>$faker->time,
			
			//互联网
			'domainName' => $faker->domainName,
			'companyEmail' => $faker->companyEmail,
			'email' => $faker->email,
			'userName' => $faker->userName,
			'password' => $faker->password,
			'url' => $faker->url,
			'ipv4' => $faker->ipv4,
			'ipv6' => $faker->ipv6,
			'localIpv4' => $faker->localIpv4,
			'macAddress' => $faker->macAddress,
			'userAgent' => $faker->userAgent,
			
			// 杂项
			'罗马数字century' => $faker->century,
			'颜色hexcolor' =>$faker->hexcolor,
			'mimeType'=>$faker->mimeType,
			'文件后缀fileExtension'=>$faker->fileExtension,
			'img' => $faker->image,
			'imgurl' => $faker->imageUrl,
			'uuid'	 => $faker->uuid,
			'sha1' => $faker->sha1,
			'sha256' => $faker->sha256,
			'md5'=> $faker->md5,
			
			//文本内容
			'单词 word' => $faker->word,
			'单词 words' => $faker->words ( 5, true ),
			'短标题 sentence' => $faker->sentence,
			'内容 content' => $faker->text ( 500 ) ,
			'内容 realText' => $faker->realText(100),
	];
	
	echo "<pre>". var_export ( $arr,1 )."</pre>";
}
ini_set('display_errors', $ini_get_display_errors);


浏览器部分输出:

    需同代码一样临时屏蔽警告信息,函数结束后再打开
    注意每项都是单独的,和其他项无关联。所以类似地理位置那里貌似看起来不合理
    本页面执行时间长,是因为调太多项,少的话很快
    类库还有一些额外功能,例如确保不重复结果,关联orm等,但都不太重要
    官网:https://github.com/fzaninotto/Faker

array (
  '姓名 name' => '柏淑兰',
  '姓 lastName' => '黎',
  '名 firstName' => '文彬',
  '手机 mobile' => '17763733071',
  '信用卡信息数组 creditCardDetails' => 
  array (
    'type' => 'MasterCard',
    'number' => '5379265658600441',
    'name' => '都晶',
    'expirationDate' => '07/20',
  ),
  '纬度 latitude' => 87.766043999999993729943525977432727813720703125,
  '经度 longitude' => 152.631833000000000311047188006341457366943359375,
  '国家 country' => '夏威夷',
  '国家代码 countryCode' => 'WF',
  '邮政编码:postcode' => '597100',
  '地址 address' => '兰州西夏区',
  '城市 city' => '上海',
  '省 state' => '广东省',
  '省简称 stateAbbr' => '蒙',
  '公司后缀 companySuffix' => '网络有限公司',
  '公司 company' => '易动力信息有限公司',
  '银行 bank' => '中国银行',
  '广告语 catchPhrase' => '时间改变一切',
  'unixTime' => 385724385,
  'year' => '1998',
  'month' => '04',
  'dayOfMonth' => '23',
  'date' => '1980-06-03',
  'time' => '07:29:14',
  'domainName' => '.com',
  'companyEmail' => 'quia11@.com.cn',
  'email' => 'odio82@yahoo.com',
  'userName' => 'jasperiores',
  'password' => 'PF@/=SrrUe\'dH5@$',
  'url' => 'http://www..com/recusandae-asperiores-ut-odit-fugiat',
  'ipv4' => '89.254.9.179',
  'ipv6' => '4371:6dd6:6c18:a49a:33bf:892b:63f2:30ab',
  'localIpv4' => '0.0.0.0',
  'macAddress' => '83:F5:2D:41:9E:88',
  'userAgent' => 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/5321 (KHTML, like Gecko) Chrome/39.0.861.0 Mobile Safari/5321',
  '罗马数字century' => 'XIX',
  '颜色hexcolor' => '#cea81a',
  'mimeType' => 'application/x-shockwave-flash',
  '文件后缀fileExtension' => 'au',
  'img' => 'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\52cc122599dc7789625212ef2d4086a3.jpg',
  'imgurl' => 'http://lorempixel.com/640/480/?47204',
  'uuid' => '591ad5c7-e029-325c-b536-e4c887afdbca',
  'sha1' => '03cf39e07dd8a832781f0d6fa84cfb0342ab4db7',
  'sha256' => 'f6e376ae06e9d140d1c44cb454cfbb60840b5d8022a3bb6e5cd6bcf5b9693abe',
  'md5' => '6d802d4d33d38ce1023b179b4028a6e1',
  '单词 word' => 'cum',
  '单词 words' => 'omnis occaecati quasi eum necessitatibus',
  '短标题 sentence' => 'Optio laudantium quae quibusdam culpa eligendi.',
  '内容 content' => 'Inventore commodi facere blanditiis similique. Aut velit saepe dolorem quaerat possimus nam eligendi. Ut quo illum ipsum blanditiis.
Perspiciatis corrupti nulla corporis totam modi repellat doloribus. Aut ea et cumque debitis rerum aut. Tenetur eveniet sint voluptas totam. Voluptatibus delectus distinctio vel rerum dolores.
Corporis quod explicabo repellendus quia repellendus. Quis rerum corporis modi eveniet temporibus saepe.',
  '内容 realText' => 'King. The White Rabbit blew three blasts on the floor, and a crash of broken glass, from which she.',
)


亲自试一试,才知道广告语的有趣!感谢把汉语加入到faker类库的人!
发表评论
用户名: 匿名