У меня есть список URL, каждая страница является определенной категорией:
http://www.site.com/category-1/page.html
http://www.site.com/category-2/page.html
http://www.site.com/category-3/page.html
На каждой странице, скажем, 4 элемента.Я хочу извлечь каждый элемент на каждой странице и присвоить ему соответствующий номер категории, т.е.
category-1_ITEM - CAT-1
category-1_ITEM - CAT-1
category-1_ITEM - CAT-1
category-1_ITEM - CAT-1
category-2_ITEM - CAT-2
category-2_ITEM - CAT-2
category-2_ITEM - CAT-2
category-2_ITEM - CAT-2
category-3_ITEM - CAT-3
category-3_ITEM - CAT-3
category-3_ITEM - CAT-3
category-3_ITEM - CAT-3
Я подумал, что это было бы довольно просто, но теперь мне приходится иметь дело с очевидными проблемами зацикливания, вот код,Ради простоты я удалил все ненужные строки:
$urls = array(
"http://www.site.com/category-1/page.html",
"http://www.site.com/category-2/page.html",
"http://www.site.com/category-3/page.html"
);
foreach ($urls as $url) {
//Load Page, find items
foreach($items as $item) {
preg_match('#http\:\/\/www\.site\.com\/(.*?)\/page\.html#is',$url,$result);
switch ($result[1]){
case "category-1": $cat = 'CAT-1'; break;
case "category-2": $cat = 'CAT-2'; break;
case "category-3": $cat = 'CAT-3'; break;
}
echo $item . ' - ' . $cat . '<br>';
}
}
Вот что он выводит:
category-1_ITEM - CAT-1
category-1_ITEM - CAT-1
category-1_ITEM - CAT-1
category-1_ITEM - CAT-1
category-1_ITEM - CAT-2
category-1_ITEM - CAT-2
category-1_ITEM - CAT-2
category-1_ITEM - CAT-2
category-2_ITEM - CAT-2
category-2_ITEM - CAT-2
category-2_ITEM - CAT-2
category-2_ITEM - CAT-2
category-1_ITEM - CAT-3
category-1_ITEM - CAT-3
category-1_ITEM - CAT-3
category-1_ITEM - CAT-3
category-2_ITEM - CAT-3
category-2_ITEM - CAT-3
category-2_ITEM - CAT-3
category-2_ITEM - CAT-3
category-3_ITEM - CAT-3
category-3_ITEM - CAT-3
category-3_ITEM - CAT-3
category-3_ITEM - CAT-3
Есть идеи о том, что я делаю неправильно?У меня такое ощущение, что это простая ошибка, я просто ее не вижу.