2013-02-24 2 views
0

Я использую curl для вызова html-содержимого из другого домена. URL-адрес немного отличается на каждой странице с помощью curl, но имя домена совпадает.Как я могу быстро изменить CURLOPT_URL на нескольких страницах

Если я хочу изменить только часть имени домена в URL-адресе curl, который используется на 10 страницах, как я могу достичь этого быстро, не редактируя код на каждой странице?

Я попытался использовать 'include' в строке url, но он не работает. Файл «include» был только префиксом домена.

Вот мой код. Единственной частью, которая нуждается в изменении по всем страницам, является доменное имя в url (mydomain.com), а не полное расширение URL-адреса.

$curl = curl_init(); 
curl_setopt ($curl, CURLOPT_URL, "http://www.mydomain.com/rssfeeds/htmlarticle.asp"); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
$result = curl_exec ($curl); 
curl_close ($curl); 
print $result; 

ответ

2

Попробуйте это:

$ch = curl_init(); 
/* HERE IS YOUR options array where key like RETURN_TRANSFERING 
            and value - true */ 
curl_setopt_array($ch, $options); 
function get($url, $ch){ 
    curl_setopt($ch, CURLOPT_URL, $url); 
    return curl_exec($curl); 
} 

UPDATE: Если у вас есть много адресов, чем взглянуть на эту библиотеку https://code.google.com/p/rolling-curl/ это поможет вам выполнить мульти запросы GET, поэтому скорость будет 2 -4 быстрее, чем запрос сверления сигле.

UPDATE2: Вот еще один для нескольких запросов https://github.com/barbushin/multirequest

+0

-1 это не будет работать, '$ ch' внутри функции не совпадает с' $ ch' снаружи. Теперь, конечно, вы можете использовать 'global', но это зло ... Если вы хотите исправить свой ответ - передайте' $ ch' функции! – alfasin

+0

Извините, я забыл, что это php, а не js. Уже исправлено – kirugan

+0

Подумайте, я немного из глубины здесь, но спасибо за ответы. Возможно ли сделать что-то подобное, поэтому мне нужно только отредактировать один файл tpl. curl_setopt ($ curl, CURLOPT_URL, "include ('includes/url.tpl') rssfeeds/htmlarticle.asp"); – Kastansa

Смежные вопросы