我知道
$localfile = $_FILES['media']['tmp_name'];
鉴于使用了 POST 方法,将获得图像。我正在尝试读取与我的代码位于同一目录中的图像。我如何读取它并将其分配给上面的变量?
您发布的代码不会读取图像数据,而是读取其文件名。如果需要检索同一目录下的图片,可以file_get_contents()
使用 检索其内容,可以直接输出到浏览器:
$im = file_get_contents("./image.jpeg");
header("Content-type: image/jpeg");
echo $im;
否则,您可以使用GD 库读取图像数据以进行进一步的图像处理:
$im = imagecreatefromjpeg("./image.jpeg");
if ($im) {
// do other stuff...
// Output the result
header("Content-type: image/jpeg");
imagejpeg($im);
}
最后,如果您不知道所需图像的文件名(但如果它与您的代码位于同一位置,则应该),您可以使用 aglob()
查找所有 jpeg,例如:
$jpegs = glob("./*.jpg");
foreach ($jpegs as $jpg) {
// print the filename
echo $jpg;
}
如果要读取图像然后将其渲染为图像
$image="path-to-your-image"; //this can also be a url
$filename = basename($image);
$file_extension = strtolower(substr(strrchr($filename,"."),1));
switch( $file_extension ) {
case "gif": $ctype="image/gif"; break;
case "png": $ctype="image/png"; break;
case "jpeg":
case "jpg": $ctype="image/jpeg"; break;
default:
}
header('Content-type: ' . $ctype);
$image = file_get_contents($image);
echo $image;
如果您的路径是 url,并且它使用 https:// 协议,那么您可能需要将协议更改为 http