2016-03-04 4 views
0

Привет, у меня есть небольшая проблема, я хочу, чтобы фильтр $ array получал только музыку ! но когда я запустил его, он отображает все в моей папке .jpg , .. и. извините, если я не понимаю, английский не мой родной язык. Благодарякак я могу поместить мой результат strpos в мой массив?

$repertoire = "Classic"; 
    $array = scandir($repertoire); 
    $arraymp3 = array(); 


    foreach ($array as $element) { 
     if (strpos($element, '.mp3'));{ 
      $arraymp3[] = $element;    
     } 
    } 
+0

1) Ваш оператор if делает это: ';' Если это правда. 2) Вероятно, вы хотите проверить '! == FALSE' на свой' strpos() ' – Rizier123

+0

Прежде всего, не должно быть'; 'после оператора if. Кроме того, условие в выражении if должно быть 'if (strpos ($ element, '.mp3')! == FALSE)'. – treegarden

+0

Спасибо! это сработало! люблю тебя <3 – Sholyu

ответ

-1
$pieces = explode(".", $element); 
    $al = sizeof($pieces); 
    if ($pieces[$al-1] == ".mp3") { 
$arraymp3[] = $element; 
} 

Попробуйте приведенный выше код вместо =]

0

Вы попробуете как этот

foreach ($array as $element) { 

    $ismp3String = strpos($element, '.mp3') 
    if ($ismp3String !== false){ 
     $arraymp3[] = $element;    
    } 
} 

Для получения более подробной информации вы прочтете http://php.net/manual/en/function.strpos.php это тщательно, как это работает

0

Вы можете использовать функция glob.

$arraymp3 = glob("*.mp3");