Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Программерам на пхп
цитата
17/05/07 в 12:43
 just_beginner
помогите двоечнику icon_smile.gif
есть массив из урлов, нужно выбрать из него все что заканчиваются на .jpg
я совсем старый стал, забыл уже все icon_sad.gif
цитата
17/05/07 в 13:11
 proc3nt
вот набросал на скорую руку, у меня заработало
Код:

function is_jpeg($file)
{
   if(substr($file, strlen($file)-4) == '.jpg')return true;
   else return false;
}

$in = array("file.jpeg", "file2.jpeg", "file.jpg", "file2.gif");
$out = array_filter($in, 'is_jpeg');
print_r($out);

цитата
17/05/07 в 13:20
 Evgen-X
через регулярные...
Код:

<?php


  $text = "http://www.test.com/pic.jpg"; 
  $chto = "#\.(jpg|gif|png|jpeg)$#isU";
  if(preg_match($chto, $text))
  {
   echo "jpeg";
  };

?>
цитата
17/05/07 в 13:24
 Evgen-X
если только .jpg, то здесь тогда можно потереть лишнее

Код:
$chto = "#\.(jpg)$#isU";
цитата
17/05/07 в 14:07
 just_beginner
Код:
<?php

$files = file('links.txt');

$chto = "#\.(jpg)$#isU";

for ($x=0;$x<count($files);$x++){

  if(preg_match($chto, $files[$x]))
  {
  echo $files[$x].'<br />';
  };

}
?>

народ, я совсем деревянный чтоли стал? отчего не работает?
файл линкс содержит линки по одной на строку... с разными типами файлов... вот надо оттуда все жпг вытащить
цитата
17/05/07 в 14:28
 EllGree
just_beginner писал:
народ, я совсем деревянный чтоли стал? отчего не работает?

Потому, что в файле есть еще символы перевода строки.

Код:
<?php
foreach(file('links.txt') as $str)
    if(ereg('\.jpg$',trim($str))) echo "$str<br />";
?>

Обрати внимание на trim
цитата
17/05/07 в 14:43
 EllGree
В принцие нет смысла в цикле разбирать файл по строкам.
preg_match_all("/([^\n\r]+\.jpg)/",file_get_contents('links.txt'),$found);
В $found[1] будет лежать массив с именами файлов.
цитата
17/05/07 в 14:54
 just_beginner
всем большое спасибо! получилось )


Эта страница в полной версии