2013-07-10 2 views
0

Я пытаюсь использовать $ value внутри переменной $ feed_title. И сгенерируйте все 200 $ feed_title переменных.Установка переменных переменных внутри foreach

То, что я пытаюсь сделать будет выглядеть следующим образом:

URL ленты: http://something.com/term/###/feed поток Название: Some Название

Если ### изменяется от 100-300.

Я использую следующий код, и получать запросы, но не уверен, как получить заголовки для каждого кормления:

$arr = range(100,300); 

foreach($arr as $key=>$value) 
{ 
    unset($arr[$key + 1]); 

    $feed_title = simplexml_load_file('http://www.something.com/term/' 
    . ??? . '/0/feed'); 

    echo 'Feed URL: <a href="http://www.something.com/term/' . $value 
    . '/0/feed">http://www.something.com//term/' . $value 
    . '/0/feed</a><br/> Feed Category: ' . $feed_title->channel[0]->title 
    . '<br/>'; 
} 

Нужен ли мне еще один цикл внутри из Еогеаспа? Любая помощь приветствуется.

+1

Этот вопрос непонятен. Что вы все еще пытаетесь сделать с данным URI? – samayo

+0

Извините, что я не понимаю, я пытаюсь использовать $ value внутри переменной $ feed_title. И сгенерируйте все 200 $ feed_title переменных –

ответ

1

Если вы хотите, чтобы получить заголовок страницы, используйте эту функцию:

function getTitle($Url){ 
    $str = file_get_contents($Url); 
    if(strlen($str)>0){ 
     preg_match("/\<title\>(.*)\<\/title\>/",$str,$title); 
     return $title[1]; 
    } 
} 

Вот некоторый пример кода:

<?php 
function getTitle($Url){ 
    $str = file_get_contents($Url); 
    if(strlen($str)>0){ 
     preg_match("/\<title\>(.*)\<\/title\>/",$str,$title); 
     return $title[1]; 
    } 
} 

$arr = range(300,305); 
foreach($arr as $value) 
{ 

    $feed_title = getTitle('http://www.translate.com/portuguese/feed/' . $value); 

    echo 'Feed URL: <a href="http://www.translate.com/portuguese/feed/' . $value . '">http://www.translate.com/portuguese/feed/' . $value . '</a><br/> 
      Feed Category: ' . $feed_title . '<br/>'; 


} 
?> 

Это название из страниц translate.com. Я просто ограничил количество страниц для более быстрого выполнения.

Просто измените getTitle на свою функцию, если вы хотите получить название из xml.

0

Вместо того, чтобы использовать массив, созданный с диапазоном, используйте цикл следующим образом:

for($i = 100; $i <= 300; $i++){ 
    $feed = simplexml_load_file('http://www.something.com/term/' . $i . '/0/feed'); 
    echo 'Feed URL: <a href="http://something.com/term/' . $i . '/0/feed">http://www.something.com/term/' . $i . '/0/feed/</a> <br /> Feed category: ' . $feed->channel[0]->title . '<br/>'; 
} 
Смежные вопросы