현재 위치: > 최신 기사 목록> 원격 사진 및 PHP 크기를 제한하는 방법에 대한 자세한 설명

원격 사진 및 PHP 크기를 제한하는 방법에 대한 자세한 설명

M66 2025-06-25

PHP에서 원격 이미지를 저장할 때 저장된 이미지 크기를 제한하는 방법은 무엇입니까?

인터넷의 빠른 발전으로 인터넷에서 사진을 획득하고 저장해야 할 것이 일반적입니다. 저장 공간을 절약하고 웹 사이트로드 속도를 향상시키기 위해서는 저장된 이미지의 크기를 제한하는 것이 특히 중요합니다. 이 기사는 원격 사진을 저장할 때 PHP를 사용하여 크기 제한을 달성하는 방법을 소개합니다.

GD 라이브러리를 사용하여 원격 이미지 크기를 얻으십시오

PHP의 GD 라이브러리는 변화하는 이미지 크기 및 압축 작업을 지원하는 강력한 이미지 처리 도구입니다. 먼저 PHP 내장 기능 getImagesize를 통해 원격 이미지의 너비와 높이 정보를 얻어야합니다. 샘플 코드는 다음과 같습니다.

$ remoteImageUrl = 'http://example.com/remote-image.jpg';
$ imageInfo = getImagesize ($ impleatimageUrl);

if (! $ imageInfo) {
    Echo '는 원격 사진을 얻지 못했습니다! ';;
    반품;
}

$ impliceMageWidth = $ imageInfo [0];
$ RemoteImageHeight = $ imageInfo [1];

위의 코드를 통해 원격 그림의 너비와 높이를 성공적으로 얻을 수 있습니다.

최대 크기를 정의하고 크기를 제한하십시오

다음으로 실제 요구에 따라 이미지 크기를 제한하기 위해 최대 너비와 최대 높이를 설정하십시오. 원격 이미지 크기가 설정 최대 값을 초과하면 스케일로 확장하고 직접 저장하십시오. 샘플 코드는 다음과 같습니다.

$ maxwidth = 800;
$ maxHeight = 600;

if ($ impliceMageWidth> $ maxWidth || $ impliceMageHeight> $ maxHeight) {
    // 스케일링 스케일을 계산합니다 $ scale = min ($ maxWidth / $ ormoteMageWidth, $ maxHeight / $ impliceAmageHeight);

    // 스케일 크기를 계산하십시오 $ newwidth = $ impliceMageWidth * $ scale;
    $ newHeight = $ impliceMageHeight * $ scale;

    // 새 빈 이미지 만들기 $ newImage = imageCreatetRueColor ($ newwidth, $ newHeight);

    // 원격 이미지를 새 이미지로 복사하고 imageCopyResAmped ($ newImage, imageCreatefromjpeg ($ ortomeMageUrl), 0, 0, 0, 0, $, $ newWidth, $ newHeight, $ ormeriMageWidth, $ impliceAmageHeight);

    // 로컬 서버에 새 이미지를 저장했습니다. imageJpeg ($ newImage, 'path/to/save/new-Image.jpg');

    // free memory imageStroy ($ newImage);
} 또 다른 {
    // 스케일링이 필요하지 않으므로 원격 이미지 사본을 저장합니다 ($ RemoteImageUrl, 'Path/To/Save/Remote-Image.jpg');
}

요약

위의 방법을 사용하면 PHP를 사용하여 원격 사진을 저장하고 크기를 효과적으로 제한 할 수 있습니다. 이 방법을 사용하면 저장된 이미지가 합리적인 크기가되므로 서버 공간을 절약 할뿐만 아니라 웹 사이트의로드 효율도 향상시킵니다. 전체 프로세스에는 다음이 포함됩니다. 원격 이미지 크기 얻기, 최대 크기 설정, 스케일이 필요한지 여부를 결정하고 마지막으로 저장합니다.