Php 使用glob以正确的旋转方式拖动图像
我正在尝试旋转目录中的图像。我的问题是,如果将Php 使用glob以正确的旋转方式拖动图像,php,glob,Php,Glob,我正在尝试旋转目录中的图像。我的问题是,如果将$imageR作为图像源,则无法获得正确的路径。我的代码如下: foreach(glob('media/{*.gif,*.png,*.JPG,.JPEG,*.jpg}', GLOB_BRACE) as $image){ $image_data = exif_read_data($image); switch($exif['Orientation']) { case 8: $imageR
$imageR
作为图像源,则无法获得正确的路径。我的代码如下:
foreach(glob('media/{*.gif,*.png,*.JPG,.JPEG,*.jpg}', GLOB_BRACE) as $image){
$image_data = exif_read_data($image);
switch($exif['Orientation']) {
case 8:
$imageR = imagerotate($image,90,0);
break;
case 3:
$imageR = imagerotate($image,180,0);
break;
case 6:
$imageR = imagerotate($image,-90,0);
break;
}
echo '<li>';
echo '<a href="tim.php?src='.$image.'&w=900&h=900&q=70&zc=3" rel="external">';
echo '<img src="tim.php?src='.$image.'&w=200&h=200"/>';
echo '</a>';
echo '</li>';
}
foreach(glob('media/{*.gif,*.png,*.JPG,*.JPG,*.JPG}',glob_括号)作为$image){
$image\u data=exif\u read\u data($image);
开关($exif['Orientation'])){
案例8:
$imageR=imagerotate($image,90,0);
打破
案例3:
$imageR=imagerotate($image,180,0);
打破
案例6:
$imageR=imagerotate($image,-90,0);
打破
}
回音“”;
回声';
回音“ ”;
}
您希望只执行一次旋转并将结果存储在服务器的文件系统中,还是希望始终在运行中执行旋转?始终在运行中是最好的,因为我允许随时上载新图像。在这种情况下,您可以在处理上载的脚本中执行转换。imagerotate
GD函数。它不会(自行)打开图像,旋转并保存它。您需要使用$image
创建一个新的GD资源,然后使用imagerotate
,然后保存它,然后更新exif,以便旋转只发生一次。这是什么样子的。。。在上面,您将看到,我实际上使用timthumb创建了这些图像的新大小,对于image src,我传入$image变量,但我希望传入新的旋转图像,而不是这些图像的旧的不正确旋转。