Итак... Я мега нуб, когда дело доходит до PHP, стараюсь изо всех сил учиться, но ЭТО НЕ ДОСТАТОЧНО ХОРОШО.
В любом случае, то, что я пытаюсь сделать, это установить создать 2 разных «динамических» каталога в PHP-эхе, структурированном в соответствии с аудиотегом HTML5.
- 1-й каталог для *.mp3
- 2-й каталог для *.ogg
I' Я пытаюсь настроить его так, чтобы я мог просто сбрасывать файлы соответствующих форматов в соответствующие папки и вуаля! Автоматически сгенерированное воспроизведение аудио в формате HTML5...
Должно быть достаточно просто, не так ли? На 100 % уверен, что делаю это наихудшим из возможных способов.
Вот код....
<?PHP
$handleAudioMp3 = opendir(dirname(realpath(__FILE__)).'/audio/mp3/');
$handleAudioOgg = opendir(dirname(realpath(__FILE__)).'/audio/ogg/');
while($fileMp3 = readdir($handleAudioMp3) & $fileOgg = readdir($handleAudioOgg)){
if($fileMp3 !== '.' && $fileMp3 !== '..' && $fileOgg !== '.' && $fileOgg !== '..'){
echo '<div>
<audio controls="controls" preload="none">
<source src="audio/mp3/'.$fileMp3.'"/>
<source src="audio/ogg/'.$fileOgg.'"/>
</audio>
</div>' ;}}
closedir($handleAudioMp3);
closedir($handleAudioOgg);
?>
Исправлено и работает благодаря ThiefMaster
<?PHP
$handleAudioMp3 = opendir(dirname(realpath(__FILE__)).'/audio/mp3/');
$handleAudioOgg = opendir(dirname(realpath(__FILE__)).'/audio/ogg/');
while(($fileMp3 = readdir($handleAudioMp3)) & ($fileOgg = readdir($handleAudioOgg))){
if($fileMp3 !== '.' && $fileMp3 !== '..' && $fileOgg !== '.' && $fileOgg !== '..'){
echo '<div>
<audio controls="controls" preload="none">
<source src="audio/mp3/'.$fileMp3.'" type="audio/mpeg"/>
<source src="audio/ogg/'.$fileOgg.'" type="audio/ogg"/>
</audio>
</div>' ;}}
closedir($handleAudioMp3);
closedir($handleAudioOgg);
?>
Разница в том, что...
while(($fileMp3 = readdir($handleAudioMp3)) & ($fileOgg = readdir($handleAudioOgg))){
&
не предназначен для использования таким образом, поэтому он не имеет таких же приоритетов, как&&
. Это может не исправить ваш код, поскольку результатыreaddir()
не сортируются. - person ThiefMaster   schedule 14.01.2012while((a = b) & (c = d))
вместоwhile(a = b & c = d)
- person ThiefMaster   schedule 14.01.2012