Php 显示用户输入图像而不将其保存到文件夹
如何在php中显示图像并将其作为输入参数传递到可执行文件中,而不将图像保存在文件夹中。用户将图像路径作为输入,当我将图像保存到一个文件夹中时,我正在使用ajax显示选中的图像。它可以工作,但如果不将图像保存到文件夹中,我如何显示图像?我现在的代码是Php 显示用户输入图像而不将其保存到文件夹,php,Php,如何在php中显示图像并将其作为输入参数传递到可执行文件中,而不将图像保存在文件夹中。用户将图像路径作为输入,当我将图像保存到一个文件夹中时,我正在使用ajax显示选中的图像。它可以工作,但如果不将图像保存到文件夹中,我如何显示图像?我现在的代码是 move_uploaded_file($_FILES["file"]["tmp_name"],"upload/".$_FILES["file"]["name"]); //echo "Store
move_uploaded_file($_FILES["file"]["tmp_name"],"upload/".$_FILES["file"]["name"]);
//echo "Stored in "."upload/".$_FILES["file"]["name"];
echo "<img src='upload/".$_FILES["file"]["name"]."' class='preview'>";
move_-upload_文件($_-FILES[“file”][“tmp_-name”],“upload/”$_-FILES[“file”][“name”]);
//echo“存储在“.upload/”$\u文件[“文件”][“名称”];
回声“;
我试过了
<img src=$_FILES["file"]["tmp_name"]. class='preview'>
但它不起作用。由于我将有成千上万的用户输入,我不想保存它。是否有任何优化和有效的方法来执行此操作?的
src
属性“/>
我认为,不保存图像就无法显示图像。您可以尝试将图像保存在服务器端的临时文件夹中,并定期清理此文件夹以避免占用大量空间。我认为不保存图像就无法显示图像 如果希望以后输出,则需要将文件保存到文件系统或内存中 这里的问题是$_文件只存在于图像发送到的脚本中。因此,当您启动另一个img源的http请求时,php不再知道您试图读取的文件是什么 您需要一种方法来告诉http请求读取哪个图像 您可以做的一件事是,您可以将文件保存在客户端可访问的位置,然后在输出后让php将其删除。因此,一旦输出图像,它将被删除,并且不再存在于文件系统中 另一种方法是直接将内容写入httpresponse,从内存中获取图像 你可以这样做
$imagedata = file_get_contents($_FILES["file"]["tmp_name"]);
$base64 = base64_encode($imagedata);
当您显示图像标签时:
<img src="data:image/png;base64, <?php echo $base64; ?>" />
“/>
希望这些对你有帮助
$image = file_get_contents($_FILES["file"]["tmp_name"]);
$enocoded_data = base64_encode($image);
<img src="data:image/png;base64, <?php echo $enocoded_data ; ?>" />