php - 循环遍历 PHP 数组显示无效响应
问题描述
我在 PHP 中创建了一个函数,主要从 txt 文件中索引文件,这是应该完成这项工作的函数
public function getPlayingItem()
{
$playData = [];
$startTimes = [];
for($i=0; $i < count($this->playListFiles); $i++){
$item = $this->playListFiles[$i];
if(empty($item)){
unset($this->playListFiles[$i]);
continue;
}
$tmp = explode(',', $item);
$playData[$i]['startTime'] = array_pop($tmp);
$startTimes[$i] = $playData[$i]['startTime'];
$playData[$i]['name'] = implode(',',$tmp);
}
array_multisort($startTimes, SORT_ASC, $playData);
for($i=0; $i < count($playData); $i++){
if (strtotime($playData[$i]['startTime']) >= time()){
break;
}
}
$info = $this->get_mp3($playData[$i-1]['name'], true, false);
$tmp = explode(DS,$playData[$i-1]['name']);
$name = array_pop($tmp);
$playing = ['number'=>($i-1),'path'=>$playData[$i-1]['name'],'name'=>$name,'duration'=>$info['data']['time'],'startTime'=>$playData[$i-1]['startTime']];
$info = $this->get_mp3($playData[$i]['name'], true, false);
$tmp = explode(DS,$playData[$i]['name']);
$name = array_pop($tmp);
$next = ['number'=>$i,'path'=>$playData[$i]['name'],'name'=>$name,'duration'=>$info['data']['time'],'startTime'=>$playData[$i]['startTime']];
$output = ['playing'=>$playing, 'next'=>$next];
return $output;
}
这是txt文件
E:\xampp\htdocs\radioclass\files\2021-02-23 22.47.04.mp3,19:10:00
E:\xampp\htdocs\radioclass\files\2021-03-15 19.39.25.mp3,19:10:39
E:\xampp\htdocs\radioclass\files\2021-05-15 19.05.13.mp3,19:10:43
E:\xampp\htdocs\radioclass\files\2021-07-14 23.04.50.mp3,19:11:03
E:\xampp\htdocs\radioclass\files\2021-08-31 11.55.38.mp3,19:11:05
E:\xampp\htdocs\radioclass\files\2021-08-31 11.56.23.mp3,19:11:09
E:\xampp\htdocs\radioclass\files\2021-09-03 23.47.38@ssr.mp3,19:12:19
E:\xampp\htdocs\radioclass\files\frmu.mp3,19:12:23
E:\xampp\htdocs\radioclass\files\frmun.mp3,19:12:26
响应:
{"playing":{"number":8,"path":"E:\\xampp\\htdocs\\radioclass\\files\\frmun.mp3","name":"frmun.mp3","duration":"00:10","startTime":"19:12:26"},"next":{"number":9,"path":null,"name":"","duration":null,"startTime":null}}
**现在的问题是,首先它应该从 0 开始并在 10 结束,第二件事是它显示第二行的路径、名称、持续时间为 null 任何帮助将不胜感激,因为我初学者**
解决方案
推荐阅读
- git - 让 TortoiseGit 在 jupyter 笔记本上运行带有 nbstripout 的 git diff.textconv 过滤器
- python - Python/Django - 设置新密码
- python - 使用 xray SDK 时在 lamdbda 中出现“没有名为 jsonpickle 的模块”错误
- python - 我已经计算了 TF 和 IDF,但是如何获得 TF-IDF?
- c# - C# 复制和粘贴具有相关格式详细信息的代码
- python - 使用 opencv 或 pyplot 显示直方图
- c# - 在文本文件中按升序输出分数 C#
- java - 我如何告诉程序向对象添加新字段?
- google-cloud-platform - 在 Dataproc 集群上使用 Datalab 时,此连接不是安全问题
- angular - Angular 7和角度材料如何获取mat-select的选定选项文本而不是其值