\n"; print "\n"; print" \n"; print" $titleTAG\n"; print" $linkTAG\n"; print" $descriptionTAG\n"; print" " . date("r") ."\n"; print" $languageTAG\n"; print" $copyrightTAG\n"; print" $generatorTAG\n"; print" $webMasterTAG\n"; print" $ttlTAG\n\n"; $dirArray = getDir("."); // Get a list of the current directory while (list($filename, $filedate) = each($dirArray)AND $maxFeed > 0) { $mp3file = new CMP3File; $mp3file->getid3 ($filename); print "\n"; echo ("$mp3file->title\n"); echo ("$rootMP3URL/". htmlentities(str_replace(" ", "%20", $filename)) ."\n"); echo ("$mp3file->title - $mp3file->album - $mp3file->artist\n"); echo ("".date("r",$filedate)."\n"); echo ("\n"); // Training slash for XML print "\n\n"; $maxFeed--; } print "\n\n"; // Functions and Classes function stripJunk ($text) { // Strip non-text characters for ($c=0; $c= 32 AND ord($text[$c]) <= 122) $outText.=$text[$c]; } return $outText; } class CMP3File { //properties var $title; var $artist; var $album; var $year; var $comment; var $genre; function getid3 ($file) { // read the ID3 or ID3v2 tag from an MP3 file if (file_exists($file)) { //after verifying the file exists, $id_start = filesize($file) - 128; $fp = fopen($file, "r"); fseek($fp, $id_start); $tag = fread($fp,3); if ($tag == "TAG") { $this->title = stripJunk(trim(fread($fp, 30))); $this->artist = stripJunk(trim(fread($fp, 30))); $this->album = stripJunk(trim(fread($fp, 30))); $this->year = stripJunk(trim(fread($fp, 4))); $this->comment = stripJunk(trim(fread($fp, 30))); $this->genre = stripJunk(trim(fread($fp, 1))); fclose($fp); return true; } else { // No ID3 tag fclose($fp); return false; } } else //the file doesn't exist return false; } } function getDir($mp3Dir) { // Returns directory as array[file]=date in newest to oldest order $dirArray = array(); $diskdir = "./$mp3Dir/"; if (is_dir($diskdir)) { $dh = opendir($diskdir); while (($file = readdir($dh)) != false ) { if (filetype($diskdir . $file) == "file" && $file[0] != ".") { if (strrchr(strtolower($file), ".") == ".mp3") { $ftime = filemtime($mp3Dir."/".$file); $dirArray[$file] = $ftime; } } } closedir($dh); } asort($dirArray); $dirArray = array_reverse($dirArray); return $dirArray; } ?>