У меня есть локальный сервер Wamp на моем компьютере с Windows. Внутри каталога www у меня есть папка, называемая проектом. с: WWW/проект/index.php.php curl скачать файл с url
И следующий же путь, у меня есть каталог для сохранения места назначения c: www/project/downloads.
, когда я был запущен мой Localhost http://localhost:8089/curl/index.php
Я следующее изображение ошибки, ошибки прилагается здесь.
Это мой код:
<?php class download {
const URL_MAX_LENGTH = 3000;
protected function cleanUrl($url) {
if(isset($url)){
if(!empty($url)){
if(strlen($url) < self::URL_MAX_LENGTH) {
return strip_tags($url);
}
}
}
}
//is url
protected function isUrl($url) {
$url = $this->cleanUrl($url);
if(isset($url)) {
if(filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED)) {
return $url;
}
}
}
protected function returnExtension($url) {
if($this->isUrl($url)) {
$end = end(preg_split("/[.]+/", $url));
if(isset($end)) {
return $end;
}
}
}
public function downloadFile($url) {
if($this->isUrl($url)) {
$extension = $this->returnExtension($url);
if($extension) {
echo $url;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
$return = curl_exec($ch);
$destination = "downloads/file.$extension";
$file = fopen($destination, "w+");
fputs($file, $return);
}
if(fclose($file)){
echo "File Download";
}
}
}
}
$obj = new Download();
if(isset($_POST['url'])) { $url = $_POST['url']; } ?>
<form action="http://localhost:8089/curl/index.php" method="post">
<input type="text" name="url" maxlength="3000"/>
<input type="submit" value="download"/>
</form>
<?php if(isset($url)) { $obj->downloadFile($url); } ?>
могли бы вы, пожалуйста, кто-нибудь помощь по этому вопросу?
Большое спасибо, Палани
HI Jay, Спасибо, много вашего сообщения, теперь это рабочий файл :) – user6420577
Добро пожаловать ..... :) –