【问题标题】:how to get image file from absolute path in php如何从php中的绝对路径获取图像文件
【发布时间】:2019-07-29 08:06:09
【问题描述】:

我有我上传的图像文件的绝对路径,我想获取我上传到我的文件夹中的图像文件。那么如何获取图像文件以及如何上传图像。所以我可以执行图像操作,如水印和旋转。所以我必须在代码点火器中获取图像文件。

我试过了,还是不行

$upld_file = 'my absolute path';
$real_path = realpath($upld_file);
$img = base64_encode($real_path);

我发送 $img 参数来上传图片

我收到“您没有选择要上传的文件”

C:\wamp64\www\codeigniter_project\assets/images/1551892667300.jpeg

这是我的图像的绝对路径

谢谢。

【问题讨论】:

  • 您实际上还没有在任何地方将文件加载到 PHP 中。你所做的只是摆弄一个包含路径和文件名的字符串
  • 实际上我的问题是如何从路径获取文件。我可以得到文件,所以我可以重新上传
  • file_get_contents 在我的项目中返回字符串,但我如何发送字符串以在 php 中上传图像

标签: php image codeigniter file-upload upload


【解决方案1】:

那应该是文件输入名称。 eg:如果你的文件浏览输入名称是myFileInput那么它应该是$this->upload->do_upload('myFileInput')

还要确保您已为表单设置属性enctype="multipart/form-data"

一个很好的例子是here

【讨论】:

  • $this->upload->do_upload('what i pass in this') 如何获取图像字段名称
  • 应该是文件输入名。例如:如果您的文件浏览输入名称是myFileInput,那么它应该是$this->upload->do_upload('myFileInput')
  • 还要确保你已经为你的表单设置了属性enctype="multipart/form-data"
  • @UrvishPatel 我已根据您在此处的输入更新了答案。
【解决方案2】:

你可以这样试试..

//define image path
$filename="C:/wamp64/www/codeigniter_project/assets/images/1551892667300.jpeg";

// Load the image
$source = imagecreatefromjpeg($filename);

// Rotate
$rotate = imagerotate($source, 90, 0);

//and save it on your server...
imagejpeg($rotate, "savedestinationpath.jpg");

【讨论】:

  • 我试过但它返回“pathinfo() 期望参数 1 是字符串”
【解决方案3】:

如果您将图像存储在项目目录根目录下的assets 中,则无需获取图像的绝对路径,您可以像这样访问图像

echo base_url('assets/images/1551892667300.jpeg');

注意: 你需要先加载 url helper

【讨论】:

  • 是的,但我如何从路径获取文件?我如何在 php 中重新上传?
  • re_upload 是什么意思?
  • 实际上它存储在我的图像文件夹中,但我想执行更新图像文件的图像操作,所以我需要在 php 中获取我的图像文件
  • 如果你想执行图像操作,那么只需提供你想要的任何方法的路径
猜你喜欢
  • 1970-01-01
  • 2011-02-07
  • 2016-07-23
  • 2021-10-18
  • 1970-01-01
  • 2011-02-07
  • 2012-08-27
  • 2014-05-24
  • 1970-01-01
相关资源
最近更新 更多