如何在PHP中将文本文件数据存储为二维数组
我需要读取和存储的数据在一个文本文件作为二维数组,但我真的不知道如何做到这一点。。。请帮忙! 文件中的数据如下所示:如何在PHP中将文本文件数据存储为二维数组,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我需要读取和存储的数据在一个文本文件作为二维数组,但我真的不知道如何做到这一点。。。请帮忙! 文件中的数据如下所示: Iver Heath 32 110.0 57.0 High Wycombe 35 235.0 121.0 Datchet 12 78.0 38.0 Englefield Green 12 278.0 157.0 Uxbridge 12 123.0 57.0 ……等等 以下是我迄今为止所尝试的: $file = array_filter(array_map("trim",
Iver Heath
32 110.0 57.0
High Wycombe
35 235.0 121.0
Datchet
12 78.0 38.0
Englefield Green
12 278.0 157.0
Uxbridge
12 123.0 57.0
……等等
以下是我迄今为止所尝试的:
$file = array_filter(array_map("trim", file("branches.txt")), "strlen");
print_r($file) . '</br>';
$file=array\u过滤器(array\u映射(“trim”、文件(“branchs.txt”)、“strlen”);
打印($file)。'';
我需要将带有位置名称的索引保持在第一级,然后将带有三个值的每个索引转换为第一级数组中的一个数组中的单独索引([0]中的[1],[3]中的[4]等等)
您可以使用以下方法对其进行解析:
根据样本数据,数据结构应如下所示:-
位置[line break]房产数量[space]收入[space]支出[line break][line break]
解析器:-
// config
$line_break = "\r\n";
$path_to_file = "path/to/file";
// read file content,
$data = file_get_contents("$path_to_file");
// split data to array of records
$data = explode("{$line_break}{$line_break}", $data);
// split record to fields,
for ($i = 0; $i < count($data); $i++) {
$data[$i] = explode("{$line_break}", trim($data[$i]), 2);
list($data[$i][1], $data[$i][2], $data[$i][3]) = explode(' ', trim($data[$i][1]), 3);
}
//配置
$line\u break=“\r\n”;
$path\u to\u file=“path/to/file”;
//读取文件内容,
$data=file_get_contents($path_to_file”);
//将数据拆分为记录数组
$data=explode(“{$line_break}{$line_break},$data”);
//将记录拆分为字段,
对于($i=0;$i
注:-
希望这能有所帮助。你能发布你所做的吗?你希望第一行是索引,第二行是文件中的值吗?欢迎使用Stack Oveflow。请访问帮助中心,并查看询问内容和方式。@Saurabh我已编辑它以包含我现在尝试的内容,抱歉:)@theinarasu我已将其编辑为包含w我现在试过的帽子,抱歉:)
// config
$line_break = "\r\n";
$path_to_file = "path/to/file";
// read file content,
$data = file_get_contents("$path_to_file");
// split data to array of records
$data = explode("{$line_break}{$line_break}", $data);
// split record to fields,
for ($i = 0; $i < count($data); $i++) {
$data[$i] = explode("{$line_break}", trim($data[$i]), 2);
list($data[$i][1], $data[$i][2], $data[$i][3]) = explode(' ', trim($data[$i][1]), 3);
}