> 백엔드 개발 > PHP 튜토리얼 > PHP 아바타 업로드

PHP 아바타 업로드

WBOY
풀어 주다: 2016-08-08 09:31:53
원래의
1121명이 탐색했습니다.

히히 크리스마스부터 게을러서 요즘 너무 바빠서 한동안 못 나온 것 같은 기분이 드네요...

저는 프론트엔드 개발 엔지니어로서 살아가면서 점점 더 혼란스러워지고 있습니다.

html5와 css3가 프런트엔드가 될까요?

PHP를 프론트엔드로 알고 계시나요?

스마티가 프론트엔드가 될까요?

JavaScript가 프런트엔드인가요?

jQuery가 프론트엔드라고 생각하시나요?

Ajax가 프런트엔드로 작동하나요?

다양한 프레임워크가 프런트엔드인가요?

요컨대 이제는 더 이상 프론트엔드 사람이 아니라는 생각이 점점 더 많이 듭니다. 많은 것을 배우고 다양하게 활용해 본 것이 바로 프론트엔드의 운명일까요?

웹사이트 프런트엔드:

웹사이트의 프런트엔드란 일반적으로 웹사이트의 프리젠테이션 레이어와 구조 레이어를 포함한 웹사이트의 프런트엔드 부분을 말합니다. 따라서 프런트엔드 기술은 일반적으로 프런트엔드 디자인과 프런트엔드 개발로 나누어집니다. 프런트엔드 디자인은 일반적으로 웹사이트의 시각적 디자인으로 이해될 수 있으며, 프런트엔드 개발은 프런트엔드 코드 구현입니다. 기본 HTML, CSS 및 JavaScript/ajax를 포함한 웹 사이트. 이제 최신 고급 버전은 HTML5, CSS3 및 SVG 등입니다.

최근 PHP 관련 내용을 접하게 되었는데 느낌이 꽤 좋아서 공유해 볼까 합니다!

PHP 아바타 업로드:

1.html

<span><</span><span>html</span><span>></span>  
<span><</span><span>head</span><span>></span>  
<span><</span><span>title</span><span>></span>图片上传<span></</span><span>title</span><span>></span>  
<span><</span><span>style </span><span>type</span><span>="text/css"</span><span>></span><span> 
body  
    </span><span>{</span><span>font-size</span><span>:</span><span> 14px</span><span>;</span><span>}</span>  
<span></</span><span>style</span><span>></span>  
<span></</span><span>head</span><span>></span>  
  
<span><</span><span>body</span><span>></span>  
<span><</span><span>form </span><span>enctype</span><span>="multipart/form-data"</span><span> method</span><span>="post"</span><span> name</span><span>="upform"</span><span>></span><span>  
  上传文件:  
  </span><span><</span><span>input </span><span>name</span><span>="upfile"</span><span> type</span><span>="file"</span><span>></span>  
  <span><</span><span>input </span><span>type</span><span>="submit"</span><span> value</span><span>="上传"</span><span>><</span><span>br</span><span>></span>  
   
<span></</span><span>form</span><span>></span> 
로그인 후 복사


2. PHP 업로드 아바타

<?<span>php
 </span><span>//</span><span>上传文件类型列表  </span>
<span>$uptypes</span>=<span>array</span><span>(  
    </span>'image/jpg',  
    'image/jpeg',  
    'image/png',  
    'image/pjpeg',  
    'image/gif',  
    'image/bmp',  
    'image/x-png'<span>  
);

</span><span>$max_file_size</span>=2000000;     <span>//</span><span>上传文件大小限制, 单位BYTE  </span>
<span>$destination_folder</span>="uploadimg/"; <span>//</span><span>上传文件路径  </span>
<span>$cun</span>="../../images/uploadimg/"<span>;
</span><span>$imgpreview</span>=1;      <span>//</span><span>是否生成预览图(1为生成,其他为不生成);  </span>
<span>$imgpreviewsize</span>=1/2;    <span>//</span><span>缩略图比例  </span>

?>
로그인 후 복사
이미지 업로드를 위한 형식 및 기타 매개변수를 정의하기만 하면 됩니다.

3. 구체적인 판단방법

<?<span>php  
</span><span>if</span> (<span>$_SERVER</span>['REQUEST_METHOD'] == 'POST'<span>)  
 {  
     </span><span>if</span> (!<span>is_uploaded_file</span>(<span>$_FILES</span>["upfile"<span>][tmp_name]))  
     </span><span>//</span><span>是否存在文件  </span>
<span>     {  
         </span><span>echo</span> "图片不存在!"<span>;  
         </span><span>exit</span><span>;  
     }  
  
    </span><span>$file</span> = <span>$_FILES</span>["upfile"<span>];  
    </span><span>if</span>(<span>$max_file_size</span> < <span>$file</span>["size"<span>])  
    </span><span>//</span><span>检查文件大小  </span>
<span>    {  
        </span><span>echo</span> "文件太大!"<span>;  
        </span><span>exit</span><span>;  
    }  
  
    </span><span>if</span>(!<span>in_array</span>(<span>$file</span>["type"], <span>$uptypes</span><span>))  
    </span><span>//</span><span>检查文件类型  </span>
<span>    {  
        </span><span>echo</span> "文件类型不符!".<span>$file</span>["type"<span>];  
        </span><span>exit</span><span>;  
    }  
  
    </span><span>if</span>(!<span>file_exists</span>(<span>$destination_folder</span><span>))  
    {  
        </span><span>mkdir</span>(<span>$destination_folder</span><span>);  
    }  
  
    </span><span>$filename</span>=<span>$file</span>["tmp_name"<span>];  
    </span><span>$image_size</span> = <span>getimagesize</span>(<span>$filename</span><span>);  
    </span><span>$pinfo</span>=<span>pathinfo</span>(<span>$file</span>["name"<span>]);  
    </span><span>$ftype</span>=<span>$pinfo</span>['extension'<span>];  
    </span><span>$destination</span> = <span>$destination_folder</span>.<span>time</span>().".".<span>$ftype</span><span>;  
    </span><span>if</span> (<span>file_exists</span>(<span>$destination</span>) && <span>$overwrite</span> != <span>true</span><span>)  
    {  
        </span><span>echo</span> "同名文件已经存在了"<span>;  
        </span><span>exit</span><span>;  
    }  
  
    </span><span>if</span>(!<span>move_uploaded_file</span> (<span>$filename</span>, <span>$destination</span><span>))  
    {  
        </span><span>echo</span> "移动文件出错"<span>;  
        </span><span>exit</span><span>;  
    }  
  
    </span><span>if</span>(<span>$imgpreview</span>==1<span>)  
    {  
    </span><span>echo</span> "<br>图片预览:<br>"<span>;  
    </span><span>echo</span> "<img src=\"".<span>$destination</span>."\" width=".(<span>$image_size</span>[0]*<span>$imgpreviewsize</span>)." height=".(<span>$image_size</span>[1]*<span>$imgpreviewsize</span><span>);  
    </span><span>echo</span> " alt=\"图片预览:\r文件名:".<span>$destination</span>."\r上传时间:\">"<span>;  
    }  
  }
</span>?>  
로그인 후 복사
아무튼 눈먼 고양이가 죽은 쥐를 만나는 장면인데 효과가 너무 고의적이네요 ㅎㅎ 생성된 이미지의 저장 경로가 관건이니까 주목해주세요!

위 내용은 PHP 아바타 업로드에 대한 내용을 포함하여 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿