This commit is contained in:
Билай Станислав 2024-05-24 13:04:27 +03:00
parent c60440d26a
commit 9d8e759172
4 changed files with 67 additions and 29 deletions

View File

@ -1,7 +1,9 @@
Билай;Станислав;Романович;2002-03-11;Мужчина;+7;9493761924;stasbilay02@yandex.ru;
Иванов;Иван;Иванович;2002-03-11;Мужчина;+7;1111111111;dsjgbdskgb@yandex.ru;
Иванова;Мария;Сергеевна;2002-04-05;Женжина;+38;2222222222;sdguhnlnoih@gmail.com;
Плешкова;Анастасия;Денисовна;2006-11-10;Женжина;+7;3333333333;ple.anastasiya@gmail.com;
Зайцева;Анжела;Игоревна;1998-12-12;Женжина;+7;4444444444;aksjfhfka@mail.ru;
Петров;Петр;Петрович;1987-03-02;Мужчина;+7;7777777777;jksghhsdkj@gmail.com;
Зайцев;Федор;Александрович;2014-12-22;Мужчина;+7;6667774441;asert@mail.ru;
Билай;Станислав;Романович;2002-03-11;Мужчина;+7;9493761924;stasbilay02@yandex.ru
Иванова;Мария;Сергеевна;2002-04-05;Женжина;+38;2222222222;sdguhnlnoih@gmail.com
Иванов;Иван;Иванович;2002-03-11;Мужчина;+7;1111111111;dsjgbdskgb@yandex.ru
Плешкова;Анастасия;Денисовна;2006-11-10;Женжина;+7;3333333333;ple.anastasiya@gmail.com
Зайцева;Анжела;Игоревна;1998-12-12;Женжина;+7;4444444444;aksjfhfka@mail.ru
Петров;Петр;Петрович;1987-03-02;Мужчина;+7;7777777777;jksghhsdkj@gmail.com
Зайцев;Федор;Александрович;2014-12-22;Мужчина;+7;6667774441;asert@mail.ru
Иванов;Петр;Михайлович;2002-03-11;Мужчина;+7;1111111111;asert@mail.ru
Иванов;Роман;Сергеевич;2002-03-11;Мужчина;+7;1111111111;ple.anastasiya@gmail.com

10
Search.php Normal file
View File

@ -0,0 +1,10 @@
<?php
function search(string $strFromFile, string $strForSearch): ?string
{
if($strFromFile) {
if (preg_match($strForSearch, $strFromFile))
return $strFromFile;
}
return null;
}

View File

@ -5,6 +5,7 @@ namespace src;
use Information;
require_once "src/Information.php";
require_once "Search.php";
$fileName = "Information.txt";
$fileModeOpen = "a";
@ -20,10 +21,47 @@ $file = fopen($fileName, $fileModeOpen);
fwrite($file, $string);
fclose($file);
$file = file($fileName);
$str = new Information();
$res = $str->search($file, "Зайцев");
$file = fopen($fileName, "r");
echo $res;
$fullArr = array();
while (!feof($file)) {
$str = fgets($file);
if(search($str, '/\b(иванов)\b/ui')){
$fullArr[] = $str;
/* $obj = new Information();
$obj->stringToParsingArray($str, $fullArr);*/
}
}
echo "<pre>";
print_r($fullArr);
//$arrKey = array('surname', 'name', 'patronymic', 'dateOfBirth', 'gender', 'countryCode', 'phoneNumber', 'email');
/*function fillArray($str, $arrKeys, $array): void
{
if($str){
$array = array_combine($arrKeys, explode(";", $str));
echo "<pre>";
print_r($array);
}
}*/
/*$strArray = explode(";", $str);
echo "<pre>";
print_r($strArray);*/
//$array = array_combine($arrKey, explode(";", $str));
/*echo "<pre>";
print_r($array);*/
// $array = array();
// fillArray($str, $arr, $array);
/*$obj = new Information();
$obj->load($array);
echo "<pre>";
print_r($obj);*/
require "table.php";

View File

@ -9,7 +9,6 @@
* @property string $countryCode
* @property string $phoneNumber
* @property string $email
* @property string $tempString
*/
class Information
{
@ -21,8 +20,6 @@ class Information
public string $countryCode;
public string $phoneNumber;
public string $email;
public string $tempString;
public function __construct()
{
@ -66,26 +63,17 @@ class Information
public function toString(): string
{
return $this->surname . ';' . $this->name . ';' . $this->patronymic . ';' . $this->dateOfBirth . ';' .
$this->gender . ';' . $this->countryCode . ';' . $this->phoneNumber . ';' . $this->email . ";\n";
$this->gender . ';' . $this->countryCode . ';' . $this->phoneNumber . ';' . $this->email . "\n";
}
/**
* @param array $textArrayFromFile
* @param string $search
* @return string|null
* @param string $str
* @param $parsingArray
* @return void
*/
public function search(array $textArrayFromFile, string $search): ?string
public function stringToParsingArray(string $str, &$parsingArray): void
{
if($textArrayFromFile) {
foreach ($textArrayFromFile as $str) {
if (str_contains($str, $search)) {
$this->tempString = strstr($str, $search);
return substr($this->tempString, 0, strlen($search));
}
}
}
return null;
$parsingArray[] = $str;
}
}