php服务器怎么存图片
时间 : 2023-03-29 17:18:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

在PHP服务器中存储图片的方法有很多种,可以选择将图片存储在本地文件夹或者存储在云存储服务上。这里我们介绍如何使用PHP将图片存储在本地文件夹中。

首先,我们需要在服务器上创建一个文件夹,用于存储图片。假设我们创建了一个名为“uploads”的文件夹。

接下来,我们可以使用PHP的上传文件功能将图片上传到服务器中。可以使用以下代码:

```php

$target_dir = "uploads/";

$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);

$uploadOk = 1;

$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);

// Check if image file is a actual image or fake image

if(isset($_POST["submit"])) {

$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);

if($check !== false) {

echo "File is an image - " . $check["mime"] . ".";

$uploadOk = 1;

} else {

echo "File is not an image.";

$uploadOk = 0;

}

}

// Check if file already exists

if (file_exists($target_file)) {

echo "Sorry, file already exists.";

$uploadOk = 0;

}

// Check file size

if ($_FILES["fileToUpload"]["size"] > 500000) {

echo "Sorry, your file is too large.";

$uploadOk = 0;

}

// Allow certain file formats

if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"

&& $imageFileType != "gif" ) {

echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";

$uploadOk = 0;

}

// Check if $uploadOk is set to 0 by an error

if ($uploadOk == 0) {

echo "Sorry, your file was not uploaded.";

// if everything is ok, try to upload file

} else {

if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {

echo "The file ". htmlspecialchars( basename( $_FILES["fileToUpload"]["name"])). " has been uploaded.";

} else {

echo "Sorry, there was an error uploading your file.";

}

}

我们可以将上述代码放在一个名为“upload.php”的文件中,并在HTML文件中使用以下代码添加上传表单:

Select image to upload:

当用户上传一张图片时,PHP会将该图片存储在“uploads”文件夹中,并在屏幕上显示上传成功的消息。

现在,我们可以在其他页面中使用“uploads”文件夹中的图片了。我们可以使用HTML的“<img>”标签来显示图片,如下所示:

My Image

这将在页面上显示名为“image.jpg”的图片。

总之,PHP提供了多种存储图片的方法。在本地服务器上存储图片可以提高页面加载速度并减少与云存储服务之间的通信。通过使用PHP的上传文件功能,我们可以轻松地将图片存储在服务器上,并使用HTML的“<img>”标签在页面中显示图片。

PHP服务器可以通过多种方式来存储图片,最常用的方法是将图片保存到服务器本地的文件夹中。以下是具体步骤:

1. 在PHP代码中指定保存文件夹的路径

在PHP代码中,使用`mkdir()`函数来创建保存图片的文件夹。例如,以下代码会在服务器根目录下创建一个名为“images”的文件夹。

```php

if (!file_exists('images')) {

mkdir('images', 0777, true);

}

2. 接收上传的图片

使用HTML的`<input>`标签中的`type="file"`属性,并将表单提交到PHP服务器。在PHP代码中,通过`$_FILES`超全局变量来获取上传的图片。以下是一个简单的示例:

```php

if (isset($_FILES['image'])) {

//获取文件名和文件后缀

$filename = $_FILES['image']['name'];

$extension = pathinfo($filename, PATHINFO_EXTENSION);

//生成唯一的文件名

$new_filename = uniqid() . '.' . $extension;

//生成保存路径

$upload_path = 'images/' . $new_filename;

//存储文件

if (move_uploaded_file($_FILES['image']['tmp_name'], $upload_path)) {

//图片存储成功

} else {

//图片存储失败

}

}

在上面的代码中,使用`move_uploaded_file()`函数将上传的图片移动到指定的文件夹中。首先,需要生成唯一的文件名,以避免上传同名文件的冲突。其次,使用`$_FILES['image']['tmp_name']`获取上传的图片的临时路径,`$upload_path`指定要存储到的位置,然后调用`move_uploaded_file()`函数将其移动到指定的位置。如果存储成功,则会得到一个成功的提示,否则会得到一个错误提示。

3. 显示图片

存储图片后,可以在PHP代码中使用相对路径来访问和显示它们。例如,如果要在页面中显示名为“example.jpg”的图片,在HTML代码中使用以下标记:

Example

这将在页面中显示保存在“images”文件夹中的“example.jpg”图片。

总之,通过以上步骤将图片存储到PHP服务器中非常简单。这样做可使用户上传的图片自动存储到指定的位置,然后在需要时轻松显示图片。