如何在PHP 7中读写ID3标签?

3

有一份id3函数列表可供使用,详见http://php.net/manual/ref.id3.php。此外,还需要安装pecl包http://pecl.php.net/package/id3。该包的两个版本均为alpha版,但这不是主要问题。

pear/id3需要PHP(版本>=4.3.0,版本<=6.0.0),而当前已安装的版本为7.2.10-0ubuntu0.18.04.1

如何在PHP 7中读写ID3标签?


1
这个问题对于SO来说有点离题,但我会在Packagist上搜索ID3库 - 看起来那里有一些更现代的库可以调查一下 :) - Darragh Enright
2个回答

2

我也遇到了同样的问题,经过一番搜索,我决定使用 https://github.com/JamesHeinrich/getID3

<?php

require 'vendor/getID3/getid3/getid3.php';

// Initialize getID3 engine
$getID3 = new getID3;

// Analyze file and store returned data in $ThisFileInfo
$ThisFileInfo = $getID3->analyze('some mp3 file.mp3');

print_r($ThisFileInfo);

非常感谢。这对我很有帮助! - Nikki

0

你可以尝试使用PECL进行编译:http://svn.php.net/viewvc/pecl/id3/

我建议使用FFMPEG。

你可以使用exec函数来使用FFmpeg。 https://wiki.multimedia.cx/index.php/FFmpeg_Metadata

exec('ffmpeg -i input.mp3 -c copy -metadata artist="Someone" output.mp3');

或者 http://eyed3.nicfit.net/ 等等。

var_dump(shell_exec("eyeD3 song.mp3 | grep artist"));
如果您的服务器是Windows,您可以下载并安装FFMPEG的二进制版本,然后将FFMPEG位置添加到Windows环境变量中,并重新启动系统以便在命令提示符和shell_exec中使用FFmpeg。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,