代码之家  ›  专栏  ›  技术社区  ›  wp student

如何处理php生成的图像(无扩展名)?

  •  2
  • wp student  · 技术社区  · 10 年前

    是否可以使用以下类型的图像URL?

    http://product-images.barneys.com/is/image/Barneys/503230930_product_1
    

    目前,我正在使用以下代码来确定远程图像格式。但我不知道如何处理上面提到的例子。这是一个例子。通常,他们这样做是为了动态调整图像大小。

    if($source['extension'] == 'png') {
    $type = 'image/png';
    }
    
    2 回复  |  直到 10 年前
        1
  •  1
  •   user2533777 user2533777    10 年前
    <?php
    $f = tempnam("./", "TMP0");
    file_put_contents($f,file_get_contents("http://product-images.barneys.com/is/image/Barneys/503230930_product_1"));
    if(getimagesize($f)){
    $type = 'image/png';
    }
    

    $f 文件现在可以让图像做任何你想做的事情,或者使用 unlink($f);

        2
  •  1
  •   Shankar Narayana Damodaran    10 年前

    你可以利用 finfo::file 扩大你不需要使用 cURL 在此背景下。

    <?php
    $remoteImgTempName = 'someimg';
    file_put_contents($remoteImgTempName,file_get_contents('http://product-images.barneys.com/is/image/Barneys/503230930_product_1'));
    echo finfo_file(finfo_open(FILEINFO_MIME_TYPE), $remoteImgTempName);
    

    OUTPUT :

    image/jpeg