php获取图片并保存到数据库中,把图片保存到数据库中和从数据库中读取图片
时间: 2023-10-03 11:10:31 浏览: 63
好的,针对你的问题,我来进行回答:
1. 获取图片并保存到数据库中
可以使用 PHP 的 file_get_contents() 函数获取远程图片并将其保存到数据库中。以下是一个简单的示例代码:
```php
$url = 'https://example.com/image.jpg';
$image = file_get_contents($url);
$base64 = base64_encode($image); // 转换为 base64 编码
// 将 base64 编码的图片数据保存到数据库中
$conn = new mysqli('localhost', 'username', 'password', 'dbname');
$sql = "INSERT INTO images (image_data) VALUES ('$base64')";
$conn->query($sql);
```
2. 从数据库中读取图片
可以使用 PHP 的 base64_decode() 函数将保存在数据库中的图片数据转换为二进制数据,然后将其输出到浏览器上。以下是一个简单的示例代码:
```php
$conn = new mysqli('localhost', 'username', 'password', 'dbname');
$sql = "SELECT image_data FROM images WHERE id = 1";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
// 将 base64 编码的图片数据转换为二进制数据
$image = base64_decode($row['image_data']);
// 输出到浏览器
header('Content-Type: image/jpeg');
echo $image;
```
注意:将图片保存到数据库中并不是一个好的实践方法,因为这样会使数据库变得非常大,并且读取图片数据也会变得非常慢。更好的方法是将图片保存到服务器的文件系统中,然后将其路径保存到数据库中。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)