Подключение PROXY к скрипту, CURL. Нужна помощь.

N
На сайте с 26.10.2009
Offline
152
1211

Здравствуйте.

Есть скрипт. Содержит browse.class.php. В нем CURL строки. Есть такая строка:

	function setProxy($proxy = null) {

if ($proxy) {
curl_setopt($this->ch, CURLOPT_PROXY, $proxy);
curl_setopt($this->ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
}
}

Как мне ему(Скрипту) прокси указать и куда?)

BredoGen.
На сайте с 19.10.2009
Offline
98
#1


setProxy("80.80.80.80:8080"); //Вызов функции. Прокси в формате Адрес:Порт

или, в зависимости от того, откуда вызывается функция, могут понадобиться такие варианты:


$this->setProxy("80.80.80.80:8080"); //Если вызывается в самом классе

или


$object->setProxy("80.80.80.80:8080"); //Если создан объект класса $object где нибудь в коде

В общем, вариант применения зависит от того, в каком месте нужно вызвать функцию :)

N
На сайте с 26.10.2009
Offline
152
#2

BredoGen., спасибо, но можно прямо код показать?) А то я запутался. Он же $proxy считает переменной, зачем ее удалять?

BredoGen.
На сайте с 19.10.2009
Offline
98
#3

Хм, он её не удаляет.


function setProxy($proxy = null) { //Передаётся параметр $proxy, значение которого по умолчанию равняется нулю (а точнее null - ничему). Т.е можно вызвать функцию так: setProxy() и параметру $proxy присвоится значение null.
if ($proxy) { //Если в переменной $proxy что-то есть (не равна null) - продолжаем
curl_setopt($this->ch, CURLOPT_PROXY, $proxy); //Присваиваем строку с прокси
curl_setopt($this->ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5); //Ставим параметр, что прокси вида SOCKS5
}
}

Если нужен код конкретно по применению - нужно смотреть весь код, что куда инклудится и где нужно использовать функцию :)

N
На сайте с 26.10.2009
Offline
152
#4


function setProxy("80.80.80.80:8080")) { //Передаётся параметр $proxy, значение которого по умолчанию равняется нулю (а точнее null - ничему). Т.е можно вызвать функцию так: setProxy() и параметру $proxy присвоится значение null.
if ($proxy) { //Если в переменной $proxy что-то есть (не равна null) - продолжаем
curl_setopt($this->ch, CURLOPT_PROXY, $proxy); //Присваиваем строку с прокси
curl_setopt($this->ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5); //Ставим параметр, что прокси вида SOCKS5
}
}

Так?=)

BredoGen.
На сайте с 19.10.2009
Offline
98
#5

Не совсем. То, что в browse.class.php - это объявление функции. Её трогать не нужно.

Нужно вызвать эту функцию в файле вашего скрипта (который "Содержит browse.class.php").

Для того, чтобы её вызвать, в вашем скрипте должен создаваться объект класса из файла browse.class.php и ниже можно вызывать эту функцию.

Где и как - объяснить трудно, нужно смотреть на код скрипта (если он уже есть).

В целом, функция должна вызываться так:


$object->setProxy("80.80.80.80:8080");

где

$object - имя объекта класса (созданного в вашем скрипте).

Строка создания объекта может выглядеть примерно так:


$object = new Browse;

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий