>  기사  >  백엔드 개발  >  PHP는 HTML5의 캔버스 이미지를 서버에 저장하는 것을 구현합니다.

PHP는 HTML5의 캔버스 이미지를 서버에 저장하는 것을 구현합니다.

不言
不言원래의
2018-07-03 09:41:461644검색

이 글에서는 캔버스 이미지를 서버에 저장하는 PHP의 방법을 주로 소개합니다. 캔버스 이미지를 서버에 저장하는 기능을 구현할 수 있는 매우 실용적인 기술입니다.

이 기사의 예제에서는 PHP를 사용하여 캔버스 이미지를 HTML5로 서버에 저장하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 구현 방법은 다음과 같습니다.

1. 문제:

몇 년 전 HTML5가 인기가 없을 때 우리 프로젝트 관리자는 나에게 다음과 같은 요구 사항을 요청한 적이 있습니다. 프로젝트 검토 전문가가 펜을 사용하여 전자적으로 서명을 작성할 수 있도록 하십시오. 태블릿에서. 이를 위해서는 브라우저를 열고 로그인한 후 리뷰 의견 페이지로 들어가는 기능을 제공하는 리뷰 소프트웨어가 필요합니다. 페이지 하단에 사용자가 터치 펜으로 서명하는 사각형 영역이 있으며 서명이 이루어집니다. 서버에 저장됩니다.

이러한 요구 사항이 당시에는 많은 어려움을 겪었지만 지금 생각해보면 HTML5 캔버스를 사용하여 구현했다면 참 간단했을 것 같습니다. 이 기능은 "HTML5 Canvas에 그림을 넣고 그림으로 저장하는 방법" 문서에 구현되어 있습니다.

2. 해결 방법:

캔버스 이미지를 사진으로 저장하고 다운로드하는 방법에 대해 여러 가지 방법에 대해 이야기했지만 이러한 방법은 모두 사진을 클라이언트에 저장하며 우리의 서명 요구 사항은 캔버스 서버에 어떻게 저장하나요?

아래 PHP 코드를 읽어보시면 사실 매우 간단합니다.

<?php
 // requires php5
 define(&#39;UPLOAD_DIR&#39;, &#39;images/&#39;);
 $img = $_POST[&#39;img&#39;];
 $img = str_replace(&#39;data:image/png;base64,&#39;, &#39;&#39;, $img);
 $img = str_replace(&#39; &#39;, &#39;+&#39;, $img);
 $data = base64_decode($img);
 $file = UPLOAD_DIR . uniqid() . &#39;.png&#39;;
 $success = file_put_contents($file, $data);
 print $success ? $file : &#39;Unable to save the file.&#39;;
?>

웹페이지에서 서버로 업로드된 사진은 base64_encode로 트랜스코딩된 데이터 URL 형식입니다. 데이터는 서버측에서 base64_decode를 사용하여 디코딩되어 파일로 저장됩니다.

언젠가 꼭 사용해야 할 수도 있으니 유용하다고 생각되면 저장해두세요!

위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되었으면 좋겠습니다. 더 많은 관련 내용은 PHP 중국어 홈페이지를 주목해주세요!

관련 추천:

PHP 특정 연도의 주의 시작 날짜와 종료 날짜를 가져오는 예

시계 방향 인쇄 행렬(나선형 행렬)을 구현하는 PHP 메서드 예

위 내용은 PHP는 HTML5의 캔버스 이미지를 서버에 저장하는 것을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.