Есть 3 текстовых файла
1 файл содержит
127.0.0.3 familiya-in
2 файл содержит
00:25:00:0F:00:1A 127.0.0.3
3 файл содержит
192.168.10.2 00:25:00:0F:00:1A
Нужно в итоге собрать
familiya-in 00:25:00:0F:00:1A 192.168.10.2
Может у кого есть подобная реализация?
Я бы делал так
function readData($name) {
$res = [];
$handle = fopen($name, "r");
if ($handle) {
while (($str = fgets($handle) !== false) {
$parsed = explode(' ', $str);
$res[$parsed[1]] = $parsed[0];
}
fclose($handle);
}
return res;
}
$mac_list = readData('file2');
$ip_list = readData('file3');
$data = [];
$handle = fopen('file1', "r");
if ($handle) {
while (($str = fgets($handle) !== false) {
$parsed = explode(' ', $str);
$name = $parsed[1];
$mac = $mac_list[$name];
$ip = $ip_list[$mac];
printf('%s %s %s', $name, $mac, $ip);
}
fclose($handle);
}
function getAndExplode($fileName, $key = 0) {
$contents = file_get_contents($fileName);
$exploded = explode(" ", $contents);
return $exploded[$key];
}
$string = getAndExplode("file1.txt", 1)
. " " . getAndExplode("file2.txt")
. " " . getAndExplode("file3.txt");
echo $string;
// familiya-in 00:25:00:0F:00:1A 192.168.10.2
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости