PHP从base64*rgba*字符串保存PNG

PHP从base64*rgba*字符串保存PNG,php,image,png,base64,jpeg,Php,Image,Png,Base64,Jpeg,我想知道是否有人可以帮我,我正在将一个图像从我的windows phone c#发送到php,我想保存该图像 数据连接正常,我可以接收POST值 有关服务器接收的信息,请参阅 我现在想将这个base64编码的RGBA字符串保存为png或jpg(我更喜欢png,但我不需要alpha值) 这是我服务器端的代码 //getimagecontents $data = base64_decode(file_get_contents("php://input")); //create an image

我想知道是否有人可以帮我,我正在将一个图像从我的windows phone c#发送到php,我想保存该图像

数据连接正常,我可以接收POST值 有关服务器接收的信息,请参阅

我现在想将这个base64编码的RGBA字符串保存为png或jpg(我更喜欢png,但我不需要alpha值)

这是我服务器端的代码

//getimagecontents  
$data = base64_decode(file_get_contents("php://input"));
//create an image from string
$im = imagecreatefromstring($data);
if ($im !== false) {
  //add an header for the image
  header('Content-Type: image/png');
  //save the image
  imagepng($im, 'upload/test.png');
  imagedestroy($im);
  echo "it worked!";
}
希望有人能帮我,因为这让我彻夜未眠:(


提前感谢:)

确保您收到了数据。如果有的话。然后在不使用base64_的情况下尝试一次解码,并在保存图像的位置创建上载目录。如果未创建,则无法保存图像

在这两种情况下,您都应该收到指示问题的警告。如果这是您的开发环境,请打开php.ini或脚本中的警告报告


另一件事,为什么只有您打算将图像保存到文件系统时才发送图像头。

我发送的图像太大,服务器无法处理

因为它是作为原始文件发送的

将其转换为png,现在可以像符咒一样工作