如何在php中将文本文件转换为数组?
(一) 我有一个文本文件(转换为.txt)和该内容的用户信息:如何在php中将文本文件转换为数组?,php,arrays,file,text,Php,Arrays,File,Text,(一) 我有一个文本文件(转换为.txt)和该内容的用户信息: 0 hbhenet pppoe D4:CA:6D:F1:5D:5A 10.23.0.254 8h1m36s 1 R moh@hj pppoe 00:27:22:16:3B:F2 10.17.0.253 8h1m36s 2 R omarmool@dr pppoe 68:72:51:3A:53:1B 10.17.0.251
0 hbhenet pppoe D4:CA:6D:F1:5D:5A 10.23.0.254 8h1m36s
1 R moh@hj pppoe 00:27:22:16:3B:F2 10.17.0.253 8h1m36s
2 R omarmool@dr pppoe 68:72:51:3A:53:1B 10.17.0.251 8h1m36s
3 R admin@khr2 pppoe 24:A4:3C:9F:83:10 10.17.0.252 8h1m36s
4 R yas@ahmed.m pppoe 24:A4:3C:E6:DD:3E 10.17.0.250 8h1m36s
5 R hus@ahmed.m pppoe 44:D9:E7:DA:32:95 10.16.0.246 8h1m36s
(二)
我在php中所做的是:
$file="converted.txt";
$fopen = fopen($file, "r");
$fread = fread($fopen,filesize($file));
fclose($fopen);
$remove = "\n";
$split = explode($remove, $fread);
$array[] = NULL;
$tab = "\t";
foreach ($split as $string)
{
$row = explode($tab, $string);
array_push($array,$row);
}
echo "<pre>";
print_r($array);
echo "</pre>";
(四) 但我想要的是: 排列( 有什么想法吗? 提前感谢。我创建了一个名为
myfile.txt的文件-
:
现在我已经申请了以下代码:-
下面给出了无需更改文本文件中任何内容的解决方法(完整代码):-
我创建了一个名为myfile.txt
的文件:-
现在我已经申请了以下代码:-
下面给出了无需更改文本文件中任何内容的解决方法(完整代码):-
干得好..我真的很感激你所做的一切.再次感谢@Anant干得好..我真的很感激你所做的一切.再次感谢@Anant
Array
(
[0] =>
[1] => Array
(
[0] => 0 hbhenet pppoe D4:CA:6D:F1:5D:5A 10.23.0.254 8h1m36s
)
[2] => Array
(
[0] => 1 R moh@hj pppoe 00:27:22:16:3B:F2 10.17.0.253 8h1m36s
)
[3] => Array
(
[0] => 2 R omarmool@dr pppoe 68:72:51:3A:53:1B 10.17.0.251 8h1m36s
)
[4] => Array
(
[0] => 3 R admin@khr2 pppoe 24:A4:3C:9F:83:10 10.17.0.252 8h1m36s
)
[5] => Array
(
[0] => 4 R yas@ahmed.m pppoe 24:A4:3C:E6:DD:3E 10.17.0.250 8h1m36s
)
[6] => Array
(
[0] => 5 R hus@ahmed.m pppoe 44:D9:E7:DA:32:95 10.16.0.246 8h1m36s
)
)
[0] => Array
(
[0] => Array
(
[0] => 0
[1] =>
[2] => hbhenet
[3] => pppoe
[4] => D4:CA:6D:F1:5D:5A
[5] => 10.23.0.254
[6] => 8h1m36s
)
[1] => Array
(
[0] => 1
[1] => R
[2] => moh@hj
[3] => pppoe
[4] => 00:27:22:16:3B:F2
[5] => 10.17.0.253
[6] => 8h1m36s
)
[2] => Array
(
[0] => 2
[1] => R
[2] => omarmool@dr
[3] => pppoe
[4] => 68:72:51:3A:53:1B
[5] => 10.17.0.251
[6] => 8h1m36s
)
[3] => Array
(
[0] => 3
[1] => R
[2] => admin@khr2
[3] => pppoe
[4] => 24:A4:3C:9F:83:10
[5] => 10.17.0.252
[6] => 8h1m36s
)
[4] => Array
(
[0] => 4
[1] => R
[2] => yas@ahmed.m
[3] => pppoe
[4] => 24:A4:3C:E6:DD:3E
[5] => 10.17.0.250
[6] => 8h1m36s
)
[5] => Array
(
[0] => 5
[1] => R
[2] => hus@ahmed.m
[3] => pppoe
[4] => 44:D9:E7:DA:32:95
[5] => 10.16.0.246
[6] => 8h1m36s
)
)
)
0 hbhenet pppoe D4:CA:6D:F1:5D:5A 10.23.0.254 8h1m36s
1 R moh@hj pppoe 00:27:22:16:3B:F2 10.17.0.253 8h1m36s
2 R omarmool@dr pppoe 68:72:51:3A:53:1B 10.17.0.251 8h1m36s
3 R admin@khr2 pppoe 24:A4:3C:9F:83:10 10.17.0.252 8h1m36s
4 R yas@ahmed.m pppoe 24:A4:3C:E6:DD:3E 10.17.0.250 8h1m36s
5 R hus@ahmed.m pppoe 44:D9:E7:DA:32:95 10.16.0.246 8h1m36s
<?php
$array = explode("\n", file_get_contents('myfile.txt'));
echo "<pre/>";print_r($array);
Array
(
[0] => 0 hbhenet pppoe D4:CA:6D:F1:5D:5A 10.23.0.254 8h1m36s
[1] => 1 R moh@hj pppoe 00:27:22:16:3B:F2 10.17.0.253 8h1m36s
[2] => 2 R omarmool@dr pppoe 68:72:51:3A:53:1B 10.17.0.251 8h1m36s
[3] => 3 R admin@khr2 pppoe 24:A4:3C:9F:83:10 10.17.0.252 8h1m36s
[4] => 4 R yas@ahmed.m pppoe 24:A4:3C:E6:DD:3E 10.17.0.250 8h1m36s
[5] => 5 R hus@ahmed.m pppoe 44:D9:E7:DA:32:95 10.16.0.246 8h1m36s
)
<?php
$array = explode("\n", file_get_contents('myfile.txt'));
echo "<pre/>";print_r($array);
$new_array = array();
foreach($array as $key =>&$arr){
if ($arr[3] !=='R'){
$arr[3] ="_";
}
$parts = preg_split('/\s+/', trim($arr));
if($parts[1] == '_'){
$parts[1] = '';
}
$new_array[$key] = $parts;
}
echo "<pre/>";print_r($new_array);
<?php
$array = explode("\n", file_get_contents('myfile.txt'));
echo "<pre/>";print_r($array);
$new_array = array();
$indexed_array = Array('number','flag','name','service','mac','IP','uptime');
foreach($array as $key =>&$arr){
if ($arr[3] !=='R'){
$arr[3] ="_";
}
$parts = preg_split('/\s+/', trim($arr));
if($parts[1] == '_'){
$parts[1] = '';
}
$new_array[$key] = array_combine($indexed_array,$parts);
}
echo "<pre/>";print_r($new_array);
<?php
$lines = array();
$fopen = fopen('converted.txt', 'r');
while (!feof($fopen)) {
$line=fgets($fopen);
$line=trim($line);
$lines[]=$line;
}
fclose($fopen);
$finalOutput = array();
foreach ($lines as $string)
{
$string = preg_replace('!\s+!', ' ', $string);
$row = explode(" ", $string);
array_push($finalOutput,$row);
}
echo "<pre>";
print_r($finalOutput);
echo "</pre>";
?>
Array
(
[0] => Array
(
[0] => 0
[1] => hbhenet
[2] => pppoe
[3] => D4:CA:6D:F1:5D:5A
[4] => 10.23.0.254
[5] => 8h1m36s
)
[1] => Array
(
[0] => 1
[1] => R
[2] => moh@hj
[3] => pppoe
[4] => 00:27:22:16:3B:F2
[5] => 10.17.0.253
[6] => 8h1m36s
)
[2] => Array
(
[0] => 2
[1] => R
[2] => omarmool@dr
[3] => pppoe
[4] => 68:72:51:3A:53:1B
[5] => 10.17.0.251
[6] => 8h1m36s
)
[3] => Array
(
[0] => 3
[1] => R
[2] => admin@khr2
[3] => pppoe
[4] => 24:A4:3C:9F:83:10
[5] => 10.17.0.252
[6] => 8h1m36s
)
[4] => Array
(
[0] => 4
[1] => R
[2] => yas@ahmed.m
[3] => pppoe
[4] => 24:A4:3C:E6:DD:3E
[5] => 10.17.0.250
[6] => 8h1m36s
)
[5] => Array
(
[0] => 5
[1] => R
[2] => hus@ahmed.m
[3] => pppoe
[4] => 44:D9:E7:DA:32:95
[5] => 10.16.0.246
[6] => 8h1m36s
)
)