在编写 php 程序时,我们经常需要读取文件并将其转换为数组以方便操作数据。php files 转数组是一个常见的任务,可以通过以下几种方法实现。
一、使用 file_get_contents 函数
file_get_contents 函数可以将文件读取为字符串。我们可以将文件读取为字符串后,再使用 explode 函数根据我们要求的分隔符将字符串分割成数组。例如,我们有一个文件 data.txt,其中包含以下内容:
Tom:24 Jerry:25 Kate:28
可以使用以下代码将其转换为数组:
$data = file_get_contents('data.txt');
$data_array = explode("\n", $data);
foreach ($data_array as &$value) {
$value = explode(':', trim($value));
}
unset($value);
print_r($data_array);输出结果如下:
Array
(
[0] => Array
(
[0] => Tom
[1] => 24
)
[1] => Array
(
[0] => Jerry
[1] => 25
)
[2] => Array
(
[0] => Kate
[1] => 28
)
)二、使用 file 函数
file 函数将整个文件读取为数组,每个数组元素都是文件中的一行。因此,我们可以直接使用 file 函数将文件读取为数组。例如,我们有一个文件 data.txt,其中包含以下内容:
立即学习“PHP免费学习笔记(深入)”;
Tom:24 Jerry:25 Kate:28
可以使用以下代码将其转换为数组:
$data_array = file('data.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach ($data_array as &$value) {
$value = explode(':', trim($value));
}
unset($value);
print_r($data_array);输出结果如下:
Array
(
[0] => Array
(
[0] => Tom
[1] => 24
)
[1] => Array
(
[0] => Jerry
[1] => 25
)
[2] => Array
(
[0] => Kate
[1] => 28
)
)三、使用 fgets 函数
fgets 函数可以逐行读取文件内容,我们可以在循环中使用 fgets 函数将文件读取为数组。例如,我们有一个文件 data.txt,其中包含以下内容:
Tom:24 Jerry:25 Kate:28
可以使用以下代码将其转换为数组:
$handle = fopen('data.txt', 'r');
$data_array = array();
while (!feof($handle)) {
$line = fgets($handle);
if ($line !== false) {
$line = explode(':', trim($line));
$data_array[] = $line;
}
}
fclose($handle);
print_r($data_array);输出结果如下:
Array
(
[0] => Array
(
[0] => Tom
[1] => 24
)
[1] => Array
(
[0] => Jerry
[1] => 25
)
[2] => Array
(
[0] => Kate
[1] => 28
)
)以上三种方法都可以将文件转换为数组,具体选择哪种方法取决于实际应用场景。如果文件内容较小,建议使用 file_get_contents 或 file 函数将文件读取为字符串或数组,然后转换为数组操作;如果文件内容较大,建议使用 fgets 函数逐行读取文件内容。
以上就是php files怎么转数组的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号