php怎么保存传过来的图片不显示
-
PHP保存传过来的图片而不显示可以通过以下几个步骤实现:
1. 获取传递的图片数据: 在服务器端接收到图片数据之后,可以使用`$_FILES`或`file_get_contents()`函数来获取图片数据。
2. 生成唯一的文件名: 使用`uniqid()`函数生成一个唯一的文件名,避免文件名冲突和覆盖。
3. 创建目标文件夹: 确保保存图片的文件夹已经存在,如果不存在可以使用`mkdir()`函数来创建。
4. 保存图片数据为文件: 使用`file_put_contents()`函数将接收到的图片数据保存为文件。文件路径由目标文件夹和唯一文件名组成。
5. 隐藏图片: 利用相关技术设置保存的图片路径不被直接访问,以此来达到不显示的效果。
下面是一个示例代码:
“`php
“`在实际应用中,可以根据自己的需求进行适当的修改和扩展,比如对保存的文件进行加密处理、限制图片上传类型和大小等。
2年前 -
当接收到传过来的图片,想要保存而不显示时,可以使用以下方法:
1. 创建一个新的文件目录来保存图片。可以在服务器上创建一个专门用于存储图片的文件夹。
2. 使用PHP的`$_FILES`全局变量来接收上传的图片。`$_FILES`包含了上传文件的相关信息,如文件名、文件类型、临时存储路径等。
3. 判断上传的文件是否是图片类型。可以使用PHP的`getimagesize()`函数来判断文件的MIME类型,确保只保存图片文件。
4. 生成一个新的文件名。可以使用`uniqid()`函数生成一个唯一的文件名,再结合原始文件的扩展名来生成新的文件名。
5. 使用PHP的`move_uploaded_file()`函数将临时存储的图片文件移动到指定的目录下,并使用新的文件名进行保存。这个函数的第一个参数是临时文件的路径,第二个参数是目标文件的路径。
以下是一个简单的示例代码:
“`php
$uploadDir = ‘uploads/’; // 设定保存图片的目录if(isset($_FILES[‘image’])){
$image = $_FILES[‘image’];// 检查上传的文件是否是图片
$imageType = exif_imagetype($image[‘tmp_name’]);
if($imageType === false){
echo ‘上传的文件不是图片类型’;
exit();
}// 生成新的文件名
$extension = pathinfo($image[‘name’], PATHINFO_EXTENSION);
$newFileName = uniqid() . ‘.’ . $extension;// 移动文件到指定目录
$uploadPath = $uploadDir . $newFileName;
if(move_uploaded_file($image[‘tmp_name’], $uploadPath)){
echo ‘图片保存成功’;
} else {
echo ‘图片保存失败’;
}
}
“`以上代码假设上传的图片字段名为`image`,保存在一个名为`uploads`的文件夹中。可以根据自己的需求修改目录和字段名。保存成功后,图片将被保存在指定的目录下,但不会在浏览器中显示。
注意:为了保证上传文件的安全性,还需要进行一些安全验证,例如检查文件大小、文件类型等。
2年前 -
在PHP中,可以通过以下步骤将传递的图片保存到服务器,并避免显示在网页上:
步骤1: 创建保存图片的目录
首先,创建一个用于保存图片的目录。可以在项目的根目录下创建一个名为 “images” 的目录,或者将其命名为任意其他名称。确保目录有适当的权限以便向其中写入文件。步骤2:处理表单上传的图片
如果图片是通过HTML表单上传的,可以使用PHP的 $_FILES 变量来处理上传文件。首先确认文件上传成功,然后将文件从临时目录移动到目标目录。以下是一个简单的示例代码,该示例处理了一个名为 “upload” 的表单,其中包含一个名为 “image” 的文件输入字段:
“`php
“;
“`在上述示例代码中,“images/example.jpg” 是之前保存图片时指定的路径和名称。该代码首先读取图片的二进制数据,然后将其转换为Base64编码的字符串。最后,使用”data” URL方案将图像数据插入到HTML中的图像标签中。
通过以上步骤,您可以通过PHP保存传递的图片,并且不会直接显示在网页上。
2年前