tp5框架实现点击按钮下载图片
时间: 2023-10-20 10:29:00 浏览: 185
tp5 上传oss图片
在TP5框架中实现点击按钮下载图片可以使用以下步骤:
1. 在视图文件中添加一个下载按钮:
```html
<button id="download-btn">下载图片</button>
```
2. 在JS文件中添加点击事件:
```javascript
document.getElementById('download-btn').addEventListener('click', function() {
window.location.href = '/controller/download_image';
});
```
当用户点击下载按钮时,会向`/controller/download_image`发送请求。
3. 在控制器中实现下载图片的方法:
```php
public function downloadImage()
{
$url = 'http://www.example.com/test.jpg';
$filename = 'test.jpg';
$savePath = './' . $filename;
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);
$fp = fopen($savePath, 'w');
fwrite($fp, $data);
fclose($fp);
header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename="' . $filename . '"');
readfile($savePath);
}
```
在该方法中,我们首先使用curl获取远程图片的内容,并将其保存到本地。然后设置响应头,提示浏览器下载该文件。
4. 修改路由配置,使得`/controller/download_image`对应到上面的方法:
```php
Route::get('controller/download_image', 'Controller@downloadImage');
```
完成上述步骤后,当用户点击下载按钮时,就会下载名为test.jpg的图片。
阅读全文