好的 我设法通过扫描我的媒体文件夹 (glob() php) 函数来创建我的播放列表来构建播放列表,但目前如果文件有中文/日文名称,则在播放时会出现问题。 现在测试我的 mp3 文件名是这个(注意我在 Linux 托管下)
01-中国话.mp3 <-- 文件名
但是在我查看 jplaylist 的源代码期间
我看到了这个
标题:"Öйú»°",mp3:"playfile.php?file=01- й .mp3",艺术家:"S.H.E"
如您所见,我正在.mp3这个 01- й 相反...
我获取文件名的方式是这样的
foreach(glob("{$directory}/*.{$extension}") as $file) {
$ThisFileInfo = $getID3->analyze($file);
$songs = new Songs;
$songs->setTitle($ThisFileInfo['tags_html']['id3v2']['title'][0]);
$songs->setFileName($ThisFileInfo['filename']); // set file Name
$songs->setArtist($ThisFileInfo['tags_html']['id3v2']['artist'][0]);
$files[$file] = $songs;
}
然后像这样输出
echo $comma.'{title:"'.$obj->getTitle().'",'.$plspacer.'mp3:"playfile.php?file='.$obj->getFileName().'",'.$plspacer.'artist:"'.$obj->getArtist().'"}';
看起来你正在尝试输出一个JavaScript对象文字。 为此尝试使用 JSON 编码:
echo json_encode(array(
'title' => $obj->getTitle(),
'mp3' => 'playfile.php?file=' . urlencode($obj->getFileName()),
'artist' => $obj->getArtist()
));