fputs (): предоставленный аргумент не является допустимым потоковым ресурсом - PullRequest
1 голос
/ 12 января 2012

Привет! Я пытаюсь добавить поддержку частного прокси в класс PHP, который использует fsockopen вместо cURL, и я немного растерялся с этим!

У меня есть следующий код, который выдает ошибкупредупреждение для каждой из строк fputs:

fputs (): предоставленный аргумент не является допустимым потоковым ресурсом

Любая помощь будет принята с благодарностью.

$proxyServer = '173.208.43.223';
$proxyPort = '8800';
$login = 'myuser'; // login name
$passwd = 'mypassword'; // password


$ptr = @fsockopen($proxyServer, $proxyPort, $errno, $errstr, $this->STIMEOUT);
fputs($ptr,"Proxy-Authorization: Basic ".base64_encode("$login:$passwd") ."\r\n");          
$uri = $server.":".$port;
fputs($ptr, 'GET '.$uri.' HTTP/1.0'."\r\n");

Ответы [ 2 ]

1 голос
/ 12 января 2012

Вы должны проверить, является ли $ ptr ложным или нет, и прервать, если оно ложно.Обязательно используйте строгое сравнение (===).

И если вы удалите знак @, вы увидите сообщения об ошибках.Знак @ обычно является индикатором плохого кода.

0 голосов
/ 20 марта 2013

Я столкнулся с той же проблемой и решил ее, выполнив следующие действия.

Удалите знак @ и увеличьте лимит времени до 30, и это работает. :)

...