J'utilise ma bibliothèque iTunes pour obtenir des données sur environ 1 100 mp3 et je rencontre un petit problème pour obtenir la durée de la bibliothèque en minutes et secondes.Conversion de la durée MP3
$duration = 1893642;
$minutes = bcmod(($duration/60), 60);
$seconds = bcmod($duration, 60);
echo $minutes.":".$seconds; //returns 0:42
Le problème est que ce MP3 spécifique est en réalité 31:42. Des pensées sur pourquoi cela ne fonctionne pas?
Vous dites donc pendant quelques secondes que je devrais éviter 'bcmod()' aussi bien? Je ne comprends pas ce que 'bcmod()' fait, quelqu'un dans un autre post de stackoverflow m'a dit de le faire, pour la plupart d'entre eux il semble bien fonctionner. – Webnet
'bcmod' prend le module à une précision arbitraire. Fondamentalement, 'bcmod ($ a, $ b)' signifie '$ a% $ b'. Les fonctions commençant par bc- proviennent de l'extension BCMath. Ils vous permettent d'effectuer des calculs de précision arbitraire. À moins que vos besoins ne nécessitent une résolution d'une microseconde (ce dont je doute), il n'y a pas grand-chose à y faire. De plus, ces fonctions stockent les nombres sous la forme d'une chaîne, donc quand vous faites une division ordinaire, ils seront transformés en types ordinaires et vous perdrez la précision. –
Ce code ne fonctionnera que si ce qu'il veut est le format suivant: "MM: SS" (même si c'est plus d'une heure) mais s'il veut le "HH: MM: SS" ça ne marchera pas ..... Donc techniquement La fonction de Wasim Karani est correcte. (Je n'ai pas un score assez élevé pour downvote cela, mais il devrait être voté en bas.) – josephtikva1