$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array($access_token),
));
if(($resp = curl_exec($curl)) === false){
throw new Exception('Ошибка curl: ' . curl_error($ch));
}
else {
curl_close($curl);
if (file_exists($resp)) {
if (ob_get_level()) {
ob_end_clean();
}
// заставляем браузер показать окно сохранения файла
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=' . basename($resp));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($resp));
// читаем файл и отправляем его пользователю
echo(readfile($resp));
exit;
}
}
$url = "http://integration.cdek.ru/v1/location/cities/json?countryCode=RU";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$headers = array(
"Content-Type: application/xml",
);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
//for debug only!
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($curl);
curl_close($curl);
var_dump($resp);
ini_set('default_socket_timeout', 3);
$debug = true;
$user = 'info@****.ru';
$pass = '****';
$host = 'ssl://mail.hosting.reg.ru';
$port = 465;
$to = '***@***.ru';
$from = 'info@***.ru';
$template = "Subject: =?UTF-8?B?VGVzdCBFbWFpbA==?=\r\n"
."To: <$to>\r\n"
."From: $from\r\n"
."MIME-Version: 1.0\r\n"
."Content-Transfer-Encoding: base64\r\n\r\n"
."VGVzdCBFbWFpbAo=\r\n.";
function smtp_mail($to, $from, $message, $user, $pass, $host, $port, $debug)
{
$pure_host = str_replace("ssl://","",$host);
$h = fsockopen($host, $port);
if ($debug){
echo "Connection to $host by port $port:".PHP_EOL;var_dump($h);
}
if ($h){
$data = array(
0,
"EHLO $pure_host",
'AUTH LOGIN',
base64_encode($user),
base64_encode($pass),
"MAIL FROM: <$from>",
"RCPT TO: <$to>",
'DATA',
$message
);
foreach($data as $c)
{
if ($debug){
echo "->SEND COMMAND: ".$c.PHP_EOL;
}
$c && fwrite($h, "$c\r\n");
while(substr($resp = fgets($h, 256), 3, 1) != ' '){}
if ($debug){
echo "<-RECIEVED COMMAND: ".$resp.PHP_EOL;
}
}
fwrite($h, "QUIT\r\n");
return "LAST RECIEVED COMMAND : ".$resp;
} else {echo "Connection error".PHP_EOL;}
}
if (isset($_SERVER['REQUEST_URI'])){echo "<pre>";}
echo (smtp_mail($to, $from, $template, $user, $pass, $host, $port, $debug));