Javascript 在php中使用imagerotate()无法获得精确的图像旋转

Javascript 在php中使用imagerotate()无法获得精确的图像旋转,javascript,php,mysql,image-rotation,Javascript,Php,Mysql,Image Rotation,我正在使用imagerotate()和imagecreatefromstring()函数旋转base64图像并更新回MySQL。 这是我的密码 $imageData = $rs[0]['image_data'];//image from DB $im = imagecreatefromstring($imageData); $degrees = $_REQUEST['selectrotate'];//Dynamic degrees. ob_start();

我正在使用
imagerotate()
imagecreatefromstring()
函数旋转
base64
图像并更新回MySQL。
这是我的密码

    $imageData = $rs[0]['image_data'];//image from DB

    $im = imagecreatefromstring($imageData);

    $degrees = $_REQUEST['selectrotate'];//Dynamic degrees.


    ob_start();
    $destImage = imagerotate($im, $degrees, 0) ;     
    imageJPEG($destImage);

    $image_thumb =mysql_real_escape_string(ob_get_contents());
    $imageDV=$image_thumb;
    ob_end_clean(); 
发生的情况如下:

$destImage = imagerotate($im, $degrees, 0); 
在这行中,当我硬编码
$degrees
替换一些值时,旋转工作正常。 但对于动态度,旋转需要+180。若“动态”值为90,则图像将旋转到270度


请帮助。

听起来像是设置为负数。(270°=-90°)您的表单是否在引擎盖下传递了正确的值?是的,安东尼。我正在获取$_请求['selectrotate']的正确值;另外,如果您阅读了PHP手册,但它会逆时针旋转图像,因此如果您选择90度,并且它会逆时针旋转270度,那么它只会逆时针旋转90度。请参阅手册:正如@Anthony所述,270°=-90°,这反过来仍然是90°(但方向相反),因此它可以正确旋转。这很有趣,但为什么它的请求变量输出与硬编码输出不同?您是否只使用180°硬编码测试?