php接收二進位檔案轉換成圖片

來源:互聯網
上載者:User
php接收二進位檔案轉換成圖片,php://input
$GLOBALS['HTTP_RAW_POST_DATA']

as3 代碼

var bitmapData:BitmapData = new BitmapData(drawWidth,
drawHeight);//的到BitmapData

var myMatrix:Matrix = new Matrix(1, 0, 0, 1, drawWidth/ 2, drawHeight/
2);//改變中心點

bitmapData.draw(Con_mc, myMatrix);//繪製位元影像資料

 

var encoder:JPGEncoder = new JPGEncoder(80);

var bytes:ByteArray = encoder.encode(bitmapData);//得到二進位位元影像資料

 

var request = new URLRequest("detail.php");

request.data = bytes;

request.method = URLRequestMethod.POST;

request.contentType = "application/octet-stream";

 

var loader:URLLoader = new URLLoader();

loader.addEventListener(Event.COMPLETE, completeHandler);

loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);

loader.load(request);//發送請求

//flash得到 php返回的資料代碼

private function completeHandler(Evt:Event):void

{

var callBack:String = Evt.currentTarget.data;

}

 

detail.php代碼

<?php
$filename="teststream.jpg";//要產生的圖片名字
if
(!empty($GLOBALS["HTTP_RAW_POST_DATA"]))
{
  $jpg =
$GLOBALS["HTTP_RAW_POST_DATA"];//得到post過來的二進位未經處理資料
  $file =
fopen("cache/pic/".$filename,"w");//開啟檔案準備寫入
  fwrite($file,$jpg);//寫入
  fclose($file);//關閉
}
?>

 

$data = $GLOBALS['HTTP_RAW_POST_DATA'];

if(!empty($data)){

    $now = date("YmdHis"); //給圖片產生 名稱

    $path = "admin/uploads/"; //定義上傳路徑 他是相對於 detail.php 的檔案路徑

    if(!file_exists($path.$now.".jpg")){        

      $fo = fopen($path.$now.".jpg","w");

        if(fwrite($fo,$data) === false){                

            $flag = "0";        

        }else{               

            $flag = $now.".jpg";

        }

         echo $flag;exit;//將檔案名稱返回給flash

    }

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.