목차
이미지 처리 시 발생하는 문제
1 . 이미지 확인 중 발생한 문제
2. 이미지 파일 업로드 방법
PHP 프레임워크 ThinkPHP thinkphp5에서 이미지 처리 시 발생하는 문제 해결

thinkphp5에서 이미지 처리 시 발생하는 문제 해결

May 18, 2021 pm 04:46 PM
thinkphp5

다음 튜토리얼 칼럼인 thinkphp에서는 thinkphp5의 이미지 처리에서 발생하는 문제를 소개할 예정입니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다!

이미지 처리 시 발생하는 문제

저장된 이미지 경로를 반환하기 위해 이미지 처리 및 클래스 업로드를 추가로 캡슐화했습니다

이미지 반환 및 저장 경로는 절대 경로가 될 수 없습니다.

이렇게 하면 이미지를 열 수 없게 됩니다. 프로젝트 및 디렉터리에 대한 상대 경로여야 합니다.

<?php
namespace app\common\vendor;

use think\Image;
use think\Request;

class Picture
{
    public function Up($file,$type)//获取图片,验证
    {
        //处理图片
        $request=new Request();
        $saveName=$request->time().&#39;.png&#39;;
        $image=Image::open($file);
        switch($type){
            case &#39;advertise&#39;:
                $deal=$image->thumb(20,40,6);
                $link=&#39;public&#39;.DS.&#39;static&#39;.DS.&#39;picture&#39;.DS.$type.DS.$saveName.&#39;.png&#39;;
                break;
            case &#39;user&#39;:
                $deal=$image->thumb(40,40,6);
                $link=&#39;public&#39;.DS.&#39;static&#39;.DS.&#39;picture&#39;.DS.$type.DS.$saveName.&#39;.png&#39;;
                break;
        }
        //上传图片
        if($deal->save(ROOT_PATH.$link)){
            //echo $deal->width()."<br/>".$deal->height();
            return $link;
        }else{
            echo "失败";
        }
    }
}
로그인 후 복사

이 클래스를 캡슐화한 후 컨트롤러에서 이미지 확인을 확인해야 합니다

1 . 이미지 확인 중 발생한 문제

내 사진 확인:

    $result = $this->validate([&#39;file&#39; => $file],
        [&#39;file&#39; => &#39;require|image|fileExt:png,jpg,gif&#39;],
        [&#39;file.require&#39; => &#39;请选择上传文件&#39;,&#39;file.image&#39;=>&#39;必须是图片哦&#39;,&#39;file.fileExt&#39;=>&#39;文件格式不对&#39;]);
로그인 후 복사

이 확인에 대해 잘 알지 못하기 때문에 사진에서 확인했습니다. 이해한 후에는 이러한 내용의 의미를 알 수 있습니다

더 많은 업로드 파일 확인 규칙도 있습니다. include 검증 규칙

  • file 파일 객체인지 확인
  • image 이미지 파일 객체인지 확인
  • image:width,height[,type] 이미지 파일의 유형과 너비, 높이를 확인합니다
  • fileExt :zip,doc,… 파일 접미사 확인
  • fileMime:image /png,… 파일 형식 확인
  • fileSize:1024 파일 크기 확인

2. 이미지 파일 업로드 방법

파일은 여기에 업로드됩니다. :open()을 사용하면 이미지 형식이 됩니다. 이 둘은 형식이 다릅니다

이미지를 처리해야 하므로 먼저 이미지를 연 다음 처리하고 저장해야 합니다.

저장하려면 thinkphp에서 이미지를 저장하려면 이미지->저장(경로)을 사용하세요

하지만 처리할 필요가 없다면 파일->이동(경로)으로 직접 저장할 수 있습니다

위 내용은 thinkphp5에서 이미지 처리 시 발생하는 문제 해결의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Pagoda에 thinkphp5를 배포할 때 오류가 발생하면 어떻게 해야 합니까? Pagoda에 thinkphp5를 배포할 때 오류가 발생하면 어떻게 해야 합니까? Dec 19, 2022 am 11:04 AM

Pagoda에 thinkphp5를 배포할 때 보고된 오류에 대한 해결 방법: 1. Pagoda 서버를 열고 php pathinfo 확장을 설치하고 활성화합니다. 2. "RewriteRule ^(.*)$ index.php 콘텐츠로 ".access" 파일을 구성합니다. ?s=/$1 [QSA ,PT,L]”; 3. 웹사이트 관리에서 thinkphp의 pseudo-static을 활성화하면 됩니다.

thinkphp5 URL 재작성이 실패하면 어떻게 해야 합니까? thinkphp5 URL 재작성이 실패하면 어떻게 해야 합니까? Dec 12, 2022 am 09:31 AM

thinkphp5 URL 재작성이 작동하지 않는 해결 방법: 1. mod_rewrite.so 모듈이 httpd.conf 구성 파일에 로드되었는지 확인합니다. 2. AllowOverride None에서 None을 All로 변경합니다. 3. Apache 구성 파일 .htaccess를 "RewriteRule ^ (.*)$ index.php [L,E=PATH_INFO:$1]" 하고 저장하세요.

thinkphp5에서 요청된 URL을 얻는 방법 thinkphp5에서 요청된 URL을 얻는 방법 Dec 20, 2022 am 09:48 AM

요청된 URL을 얻는 thinkphp5의 방법: 1. 현재 URL 정보를 얻기 위해 "\think\Request" 클래스의 "$request = Request::instance();" 방법을 사용합니다. 도메인 이름을 포함한 전체 URL 주소를 얻으려면 "$request-> url()" 함수를 사용하세요.

thinkphp5 게시물이 값을 얻을 수 없으면 어떻게 해야 합니까? thinkphp5 게시물이 값을 얻을 수 없으면 어떻게 해야 합니까? Dec 06, 2022 am 09:29 AM

thinkphp5 게시물은 TP5가 strpos 함수를 사용하여 헤더의 콘텐츠 유형 값에서 app/json 문자열을 찾기 때문에 값을 얻을 수 없습니다. 해결 방법은 헤더의 콘텐츠 유형 값을 app/json으로 설정하는 것입니다.

thinkphp5 제목 표시줄 아이콘을 제거하는 방법 thinkphp5 제목 표시줄 아이콘을 제거하는 방법 Dec 20, 2022 am 09:24 AM

thinkphp5 제목 표시줄 아이콘을 제거하는 방법: 1. thinkphp5 프레임워크 공개에서 favicon.ico 파일을 찾습니다. 2. 파일을 삭제하거나 다른 사진을 선택하여 이름을 favicon.ico로 바꾸고 원본 favicon.ico 파일을 대체합니다.

thinkphp5에서 컨트롤러가 존재하지 않는다는 메시지가 표시되면 어떻게 해야 합니까? thinkphp5에서 컨트롤러가 존재하지 않는다는 메시지가 표시되면 어떻게 해야 합니까? Dec 06, 2022 am 10:43 AM

컨트롤러가 존재하지 않는다고 메시지를 표시하는 thinkphp5에 대한 해결 방법: 1. 해당 컨트롤러의 네임스페이스가 올바르게 작성되었는지 확인하고 올바른 네임스페이스로 변경합니다. 2. 해당 tp 파일을 열고 클래스 이름을 수정합니다.

ThinkPHP5에서 어제의 데이터를 쿼리하는 방법 ThinkPHP5에서 어제의 데이터를 쿼리하는 방법 Dec 05, 2022 am 09:20 AM

ThinkPHP5에서 어제의 데이터를 쿼리하는 방법: 1. ThinkPHP5 관련 파일을 엽니다. 2. "db('table')->whereTime('c_time', 'yesterday')->select();" 표현식을 통해 어제의 데이터를 쿼리할 수 있습니다. .

thinkphp5에서 오류 프롬프트를 설정하는 방법 thinkphp5에서 오류 프롬프트를 설정하는 방법 Dec 07, 2022 am 10:31 AM

thinkphp5에서 오류 프롬프트를 설정하는 방법: 1. 프로젝트 루트 디렉터리에 있는 public 폴더를 입력하고 index.php 항목 파일을 엽니다. 2. 디버그 모드 스위치에 대한 설명을 봅니다. 3. "APP_DEBUG" 상수 값을 조정합니다. 오류 메시지 프롬프트를 표시하려면 true로 설정합니다.

See all articles