php - php逐行拆分文本并获取特定元素
问题描述
我有一个大文本文件,由新行分割,每一行元素都由';'分割,如下所示:
1;1;20;3.6;0%;70%;25%;0%;5%;
1;2;80;4;45%;20%;20%;15%;0%;
1;3;80;4;40%;35%;5%;20%;0%;
1;4;20;3.6;15%;40%;38%;5%;2%;
1;5;20;3.6;30%;18%;33%;20%;0%;
1;6;80;4;27%;47%;23%;3%;0%;
我想做的是用 PHP 正确读取文件并访问任何行中的特定元素,例如在第 2 行、第 3 行(如果将其视为索引,则可能是 [1][2])并打印它.
<?php
//split by new line
$text = fopen("public/data/data1.txt", "r");
if ($text) {
while (($lines = fgets($text)) !== false) {
//split by ;
$line = explode(';', $lines);
//access a specific element
}
fclose($text);
} else {
// error opening the file.
}
?>
有人知道我如何访问这些元素吗?
解决方案
您可以将字符串炸开两次。
先在线路上,然后在;
.
$arr = explode(PHP_EOL, $str);
Foreach($arr as &$line){
$line = explode(";", $line);
}
然后echo $arr[1][2];
将按您的意愿工作
推荐阅读
- netlify-cms - 如何在 Netlify CMS 中添加图片上传功能
- optaplanner - Optaplanner ScoreDirector 持续规划 DayOff 请求
- image-processing - 我们如何在 CNN 中选择内核?(卷积神经网络)
- ajax - 将 2 个表单放在同一页面上的最佳方法是什么?
- android - 广播接收器未收到 USB 权限
- r - 绘制 PCA,autoplot() 不会按组变量分隔颜色
- url - url中的“?ac_id = 2”是什么意思?
- c# - 在每个派生类构造函数之后调用方法
- java - 尝试解析 JSONArray 时出现 ClassCastException
- python - 为循环中的数据绘制箱线图