getid3-1.7.4....help

micolo

Новичок
getid3-1.7.4....help

Доброго времени суток! Появилась необходимость в чтении тегов mp3 файлов. Стал истользовать getid3-1.7.4. Мне было нужно считывать из директории mp3 и вытаскивать из них теги. Я немно переделал вывод тегов, основной код не тронут. Всё что нужно он считывает, но если у mp3 которой идёт перед текущей идёт например тег title заполнен, а у текущей он пустой, то тег title текущей mp3 при выведении на экран, заменяется тегом title предыдущей mp3.

Вот мой код.
PHP:
$AutoGetHashes = (bool) (filesize($filename) < 52428800); // auto-get md5_data, md5_file, sha1_data, sha1_file if filesize < 50MB
     $ThisFileInfo = $getID3->analyze($filename);

     foreach ($ThisFileInfo as $k => $v) {
           $audio_file[$k]=$v;
     }

     foreach ($ThisFileInfo['tags'] as $k => $v) {
               $id3v2[$k]=$v;
     }

     foreach ($id3v2['id3v1'] as $k => $v) {
               $id3v[$k]=$v;
     }

     foreach ($id3v['year'] as $k => $v) {
               $id3[$k]=$v;
     }
     foreach ($id3v['genre'] as $k => $v) {
               $id4[$k]=$v;
     }
     foreach ($id3v['artist'] as $k => $v) {
               $id5[$k]=$v;
     }
      foreach ($id3v['album'] as $k => $v) {
               $id6[$k]=$v;
     }

      foreach ($id3v['title'] as $k => $v) {
                         $id7[$k]=$v;

        }

       print "Время в минутах = ".$audio_file['playtime_string']."<br>";
     print "Имя файла = ".$audio_file['filename']."<br>";
     print "Год = ".($id3[0])."<br>";
     print "Жанр = ".($id4[0])."<br>";
     print "Артист = ".($id5[0])."<br>";
     print "Альбом = ".($id6[0])."<br>";
     print "Название = ".$id7[0]."<br>";
На сколько я понимаю он создает общий массив, потом запихивает туда данные из mp3 и если какой-то элемент не приходит он оставляет там предыдущий элемент, конкретно в массиве $id3v. Как можно полностью отчистить массив от предыдущих данных?
 

SiMM

Новичок
Во-первых, массивы бывают многомерными, а во-вторых - переменные надо инициализировать. Чтобы потом не удивляться, почему в них находиться невесть что.
 
Сверху