Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Geleitwort
Vorwort
1 PEAR – Einführung
2 Authentication
3 Caching
4 Date and Time
5 File Formats
6 HTTP
7 Internationalization
8 Mail
9 Networking
10 PHP
11 Text
12 Web Services
13 Benchmarking
14 Configuration
15 Database
16 File System
17 HTML
18 Images
19 Logging
20 Math
21 Numbers
22 Tools and Utilities
23 XML
24 Selbst Pakete erstellen
25 PECL
Index
Ihre Meinung?

Spacer
 <<   zurück
PHP PEAR von Carsten Möhrke
Anwendung und Entwicklung – Erweiterungen für PHP schreiben
Buch: PHP PEAR

PHP PEAR
798 S., 39,90 Euro
Rheinwerk Computing
ISBN 3-89842-580-0
gp 25 PECL
  gp 25.1 Allgemeines
  gp 25.2 Installation
  gp 25.3 crack
  gp 25.4 apd
  gp 25.5 bcompiler
  gp 25.6 perl
  gp 25.7 Xdebug
  gp 25.8 APC
  gp 25.9 IDN
  gp 25.10 blenc
  gp 25.11 xmlreader
  gp 25.12 xmlwriter
  gp 25.13 id3


Rheinwerk Computing

25.13 id3  toptop


Version: 0.2 Lizenz: PHP-Lizenz 3.0

id3 ist sozusagen PECLs Gegenstück zu PEARs MP3_Id. Es handelt sich also um eine Erweiterung, die es Ihnen ermöglicht, ID3-Tags aus MP3-Dateien auszulesen und diese zu verändern. Informationen zu ID3-Tags entnehmen Sie bitte Abschnitt 5.3 über PEAR::MP3_Id.

id3 ist zu PHP 5 kompatibel und ist dadurch, dass die Erweiterung in C geschrieben ist, natürlich deutlich schneller als die PEAR-Variante.

Möchten Sie einfach nur die ID3-Daten auslesen, ist die Funktion id3_get_tag() hilfreich. Sie bekommt, wie die anderen dateibezogenen Funktionen auch, den Namen der MP3-Datei als Parameter übergeben. Die Funktion ermittelt die Daten, die in der Datei enthalten sind, und gibt diese als assoziatives Array zurück. Die Funktion liefert nur die Tags zurück, die in der Datei auch vorhanden sind, wobei die ID3-Versionen 1.0, 1.1 und 2.2 und nachfolgende unterstützt werden. Welche Tags möglich sind, finden Sie im Kapitel 5.3 Kann die Funktion keine Daten ermitteln, liefert sie ein leeres Array zurück.

Der Name des Tags fungiert als Array-Schlüssel, und der Wert wird direkt übernommen. Da das Tag genre nur die Nummer des Genres, nicht aber den eigentlichen Namen enthält, können Sie die Klartextdarstellung des Genres mit der Funktion id3_get_genre_name() auslesen, die die Nummer des Genres übergeben bekommt. Eine komplette Liste aller Genres stellt die Funktion id3_get_genre_list() zur Verfügung. Um die ID3-Informationen einer Datei auszulesen, könnten Sie einen Code wie den aus Listing 25.16 nutzen.

dl('id3.so'); 
$file = 'kopf.mp3'; 
$daten = id3_get_tag($file); 
if (0 === count ($daten)) 
{ 
   echo 'Es konnten keine Daten ermittelt werden'; 
} 
else 
{ 
   echo '<table>'; 
   foreach ($daten as $tag => $value) 
   { 
      echo "<tr><td>$tag</td> 
                <td>$value</td></tr>"; 
      if ('genre' == $tag) 
      { 
         $value=preg_replace("/\((\d+)\)/",'\1',$value); 
         echo '<tr><td>Name des Genres</td> 
                   <td>'.id3_get_genre_name($value).'</td>'; 
      } 
   } 
   echo '</table>'; 
}

Listing 25.16 Lesen von ID3-Daten mit id3

Bitte wundern Sie sich nicht über den regulären Ausdruck bei der Ausgabe des Genre-Namens. Dieser ist notwendig, da die Nummer in einigen Fällen mit Klammern zurückgegeben wird, die mit diesem Ausdruck entfernt werden. Wie die Ausgabe des Scripts aussehen kann, sehen Sie in Abbildung 25.4.

Abbildung 25.4 Daten aus einer MP3-Datei

Welche Version des ID3-Standards genutzt wird, können Sie mit id3_get_version() auslesen. Auch diese Funktion bekommt den Dateinamen als Parameter übergeben.

Um die Tags einer bestehenden Datei zu verändern, können Sie id3_set_tag() nutzen. Die Funktion bekommt den Dateinamen sowie ein Array übergeben und schreibt die Daten direkt in die Datei. In diesem Array nutzen Sie die Namen der Tags, die geändert werden sollen, als Schlüssel. Der Wert wird jeweils direkt übernommen. Der dritte Parameter ist die Version der ID3-Information. Ist schon ein ID3-Tag vorhanden, nutzen Sie am besten die Information, die id3_get_version() Ihnen liefert. Ist noch kein Tag vorhanden, können Sie eine Version vorgeben. Hierzu kennt das Paket die Konstanten ID3_V1_0, ID3_V1_1, ID3_V2_1, ID3_V2_2, ID3_V2_3 und ID3_V2_4.

 <<   zurück
     
  Zum Katalog
Zum Katalog: PHP PEAR
PHP PEAR
Jetzt bestellen!
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: PHP 5.6 und MySQL 5.7






 PHP 5.6 und
 MySQL 5.7


Zum Katalog: Einstieg in PHP 5.6 und MySQL 5.6






 Einstieg in PHP 5.6
 und MySQL 5.6


Zum Katalog: Responsive Webdesign






 Responsive Webdesign


Zum Katalog: Moderne Websites entwickeln






 Moderne Websites
 entwickeln


Zum Katalog: MySQL 5.6






 MySQL 5.6


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo








Copyright © Rheinwerk Verlag GmbH 2007
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de