Пример #1
0
 function DeleteTags($TagFormatsToDelete)
 {
     foreach ($TagFormatsToDelete as $DeleteTagFormat) {
         $success = false;
         // overridden if tag deletion is successful
         switch ($DeleteTagFormat) {
             case 'id3v1':
                 $id3v1_writer = new getid3_write_id3v1();
                 $id3v1_writer->filename = $this->filename;
                 if (($success = $id3v1_writer->RemoveID3v1()) === false) {
                     $this->errors[] = 'RemoveID3v1() failed with message(s):<PRE><UL><LI>' . trim(implode('</LI><LI>', $id3v1_writer->errors)) . '</LI></UL></PRE>';
                 }
                 break;
             case 'id3v2':
                 $id3v2_writer = new getid3_write_id3v2();
                 $id3v2_writer->filename = $this->filename;
                 if (($success = $id3v2_writer->RemoveID3v2()) === false) {
                     $this->errors[] = 'RemoveID3v2() failed with message(s):<PRE><UL><LI>' . trim(implode('</LI><LI>', $id3v2_writer->errors)) . '</LI></UL></PRE>';
                 }
                 break;
             case 'ape':
                 $ape_writer = new getid3_write_apetag();
                 $ape_writer->filename = $this->filename;
                 if (($success = $ape_writer->DeleteAPEtag()) === false) {
                     $this->errors[] = 'DeleteAPEtag() failed with message(s):<PRE><UL><LI>' . trim(implode('</LI><LI>', $ape_writer->errors)) . '</LI></UL></PRE>';
                 }
                 break;
             case 'vorbiscomment':
                 $vorbiscomment_writer = new getid3_write_vorbiscomment();
                 $vorbiscomment_writer->filename = $this->filename;
                 if (($success = $vorbiscomment_writer->DeleteVorbisComment()) === false) {
                     $this->errors[] = 'DeleteVorbisComment() failed with message(s):<PRE><UL><LI>' . trim(implode('</LI><LI>', $vorbiscomment_writer->errors)) . '</LI></UL></PRE>';
                 }
                 break;
             case 'metaflac':
                 $metaflac_writer = new getid3_write_metaflac();
                 $metaflac_writer->filename = $this->filename;
                 if (($success = $metaflac_writer->DeleteMetaFLAC()) === false) {
                     $this->errors[] = 'DeleteMetaFLAC() failed with message(s):<PRE><UL><LI>' . trim(implode('</LI><LI>', $metaflac_writer->errors)) . '</LI></UL></PRE>';
                 }
                 break;
             case 'lyrics3':
                 $lyrics3_writer = new getid3_write_lyrics3();
                 $lyrics3_writer->filename = $this->filename;
                 if (($success = $lyrics3_writer->DeleteLyrics3()) === false) {
                     $this->errors[] = 'DeleteLyrics3() failed with message(s):<PRE><UL><LI>' . trim(implode('</LI><LI>', $lyrics3_writer->errors)) . '</LI></UL></PRE>';
                 }
                 break;
             case 'real':
                 $real_writer = new getid3_write_real();
                 $real_writer->filename = $this->filename;
                 if (($success = $real_writer->RemoveReal()) === false) {
                     $this->errors[] = 'RemoveReal() failed with message(s):<PRE><UL><LI>' . trim(implode('</LI><LI>', $real_writer->errors)) . '</LI></UL></PRE>';
                 }
                 break;
             default:
                 $this->errors[] = 'Invalid tag format to delete: "' . $tagformat . '"';
                 return false;
                 break;
         }
         if (!$success) {
             return false;
         }
     }
     return true;
 }