mirror of
https://github.com/retailcrm/NameCaseLib.git
synced 2024-12-05 03:16:06 +03:00
80 lines
2.1 KiB
PHP
80 lines
2.1 KiB
PHP
<?php
|
|
|
|
class TestGenerator
|
|
{
|
|
public $maintemplate;
|
|
public $testtemplate;
|
|
|
|
public $resultArrB=array();
|
|
public $resultArrG=array();
|
|
|
|
private $gender;
|
|
|
|
private $tests;
|
|
private $count=0;
|
|
|
|
|
|
public function __construct()
|
|
{
|
|
//$this->resultArr[]=file('Names/boy_full_result.txt');
|
|
//$this->resultArr[]=file('Names/girl_full_result.txt');
|
|
}
|
|
|
|
public function generate($fname)
|
|
{
|
|
$this->maintemplate = file_get_contents('Template/NCLNameCaseRuTest.main');
|
|
$this->testtemplate = file_get_contents('Template/NameSplit.test');
|
|
$this->resultArrB=file('NamesAll/boy'.$fname.'.txt');
|
|
$this->resultArrG=file('NamesAll/girl'.$fname.'.txt');
|
|
$this->count=0;
|
|
if ($fname=='name')
|
|
$this->gender='N';
|
|
elseif($fname=='sirname')
|
|
$this->gender='S';
|
|
else
|
|
{
|
|
$this->gender='F';
|
|
}
|
|
//foreach ($this->resultArr as $key=>$value)
|
|
//{
|
|
//$this->gender=$key+1;
|
|
foreach ($this->resultArrB as $id=>$name)
|
|
{
|
|
$this->generateTest(trim($name));
|
|
}
|
|
//foreach ($this->resultArr as $key=>$value)
|
|
//{
|
|
//$this->gender=$key+1;
|
|
foreach ($this->resultArrG as $id=>$name)
|
|
{
|
|
$this->generateTest(trim($name));
|
|
}
|
|
//}
|
|
$res=str_replace('{% tests %}', $this->tests, $this->maintemplate);
|
|
$res=str_replace('{% name %}', $fname, $res);
|
|
file_put_contents('../Library/NameSplit'.$fname.'.php',$res);
|
|
}
|
|
|
|
private function generateTest($name)
|
|
{
|
|
$tpl=$this->testtemplate;
|
|
$tpl=str_replace('{% id %}', $this->count, $tpl);
|
|
$tpl=str_replace('{% name %}', $name, $tpl);
|
|
$tpl=str_replace('{% gender %}', $this->gender, $tpl);
|
|
|
|
$this->tests.=$tpl;
|
|
$this->count++;
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
$p= new TestGenerator;
|
|
$p->generate('name');
|
|
$p= new TestGenerator;
|
|
$p->generate('sirname');
|
|
$p= new TestGenerator;
|
|
$p->generate('father');
|
|
?>
|