source: spip-zone/_plugins_/getID3/getid3_fonctions.php @ 41228

Last change on this file since 41228 was 41228, checked in by kent1@…, 9 years ago

Des entêtes de fichiers php similaires

File size: 2.2 KB
Line 
1<?php
2/**
3 * GetID3
4 * Gestion des métadonnées de fichiers sonores directement dans SPIP
5 *
6 * Auteurs :
7 * Quentin Drouet (kent1), BoOz
8 * 2008-2010 - Distribué sous licence GNU/GPL
9 *
10 */
11
12function recuperer_id3_doc($id_document,$info = "", $mime = "",$retour='oui'){
13        include_spip('inc/documents');
14
15        $recuperer_id3 = charger_fonction('getid3_recuperer_infos','inc');
16        $id3_content = $recuperer_id3($id_document);
17
18        if($retour == 'oui'){
19                $output = '';
20                foreach($id3_content as $cle => $val){
21                        if(preg_match('/cover/',$cle)){
22                                $output .= ($val) ? '<img src='.$val.' /><br />' : '';
23                        }else{
24                                $output .= ($val) ? _T('getid3:info_'.$cle).' : '.$val.'<br />' : '';
25                        }
26                }
27        }else{
28                $output = $id3_content;
29        }
30        return $output;
31}
32
33/**
34 * Converti une durée en secondes en une durée affichable et lisible hh:mm:ss ou mm:ss
35 * @param int/float $temps_secondes le nombre de secondes
36 */
37function getid3_duree($temps_secondes){
38        $diff_hours    = floor($temps_secondes/3600);
39        $temps_secondes -= $diff_hours   * 3600;
40        $diff_hours = (($diff_hours >= 0) && ($diff_hours < 10)) ? '0'.$diff_hours : $diff_hours;
41
42        $diff_minutes  = floor($temps_secondes/60);
43        $temps_secondes -= $diff_minutes * 60;
44        $diff_minutes = (($diff_minutes >= 0) && ($diff_minutes < 10)) ? '0'.$diff_minutes : $diff_minutes;
45
46                $temps_secondes = (($temps_secondes >= 0) && ($temps_secondes < 10)) ? '0'.floor($temps_secondes) : floor($temps_secondes);
47
48        $str = (($diff_hours > 0) ? $diff_hours.':':'').(($diff_minutes > 0) ? $diff_minutes:'00').':'.$temps_secondes;
49
50        return $str;
51}
52
53function getid3_duree_iso8601($temps_secondes){
54        $diff_hours    = floor($temps_secondes/3600);
55        $temps_secondes -= $diff_hours   * 3600;
56        $diff_hours = (($diff_hours >= 0) && ($diff_hours < 10)) ? '0'.$diff_hours : $diff_hours;
57
58        $diff_minutes  = floor($temps_secondes/60);
59        $temps_secondes -= $diff_minutes * 60;
60        $diff_minutes = (($diff_minutes >= 0) && ($diff_minutes < 10)) ? '0'.$diff_minutes : $diff_minutes;
61
62                $temps_secondes = (($temps_secondes >= 0) && ($temps_secondes < 10)) ? '0'.floor($temps_secondes) : floor($temps_secondes);
63
64        $str = 'PT'.(($diff_hours > 0) ? $diff_hours.'H':'').(($diff_minutes > 0) ? $diff_minutes:'00').'M'.$temps_secondes.'S';
65
66        return $str;
67}
68?>
Note: See TracBrowser for help on using the repository browser.