Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Как вывести формат и размер картинки?

Тема в разделе "Свободное общение", создана пользователем upload, 29 ноя 2019.

29.11.19 в 14:06
29.11.19 в 14:14
1
301
0
  1. TopicStarter Overlay
    upload

    PRO Users

    Регистрация:
    9 ноя 2016
    Сообщения:
    197
    Лучших ответов:
    3
    Рейтинги:
    +40 / 5 / -0
    Всем привет.

    Ребят есть такой хак который выводит формат и размер картинки,
    Но он выводит только для дополнительное поле типа "Загружаемое изображение"

    Кто знает как можно переделать чтобы выводило для дополнительное поле типа "Загружаемая галерея изображений"

    Сам хак!
    Код:
    <?php
    /*
    =====================================================
    imginfo
    -----------------------------------------------------
    WebSite : LostSerial
    =====================================================
    */
    if( !defined( 'DATALIFEENGINE' ) ) {
            die( "Hacking attempt!" );
    }
    include ENGINE_DIR .'/modules/filesize.php'; // Размер файла
    $content = "{$poster}"; // Ссылка на файл
    $file_open = fopen($content, "r");$file_size = 0;
    // Размер изображения (пример 600х600)
    $imginf = getimagesize("{$poster}");
    // Тип изображения
    $flag = array(1=>'GIF', 2=>'JPG', 3=>'PNG', 4=>'SWF', 5=>'PSD', 6=>'BMP', 7=>'TIFF(байтовый порядок intel)', 8=>'TIFF(байтовый порядок motorola)', 9=>'JPC', 10=>'JP2', 11=>'JPX');     
    echo  "<br>Размер: ".$imginf[0] ."x". $imginf[1] .', ';
    while(($str = fread($file_open, 1024)) != null) {$file_size += strlen($str);}
    echo "Вес: ".size_convert($file_size);
    ?>

    Код:
    <?php
    /*
    =====================================================
    img info
    -----------------------------------------------------
    WebSite : LostSerial
    =====================================================
    */
    function size_convert($bytes) {
    
        $bytes = floatval($bytes);
        
        $arBytes = array(
            0 => array(
                "UNIT" => "Tb",
                "VALUE" => pow(1024, 4)
            ),
            1 => array(
                "UNIT" => "Gb",
                "VALUE" => pow(1024, 3)
            ),
            2 => array(
                "UNIT" => "Mb",
                "VALUE" => pow(1024, 2)
            ),
            3 => array(
                "UNIT" => "Kb",
                "VALUE" => 1024
            ),
            4 => array(
                "UNIT" => "b",
                "VALUE" => 1
            ),
        );
    
        foreach($arBytes as $arItem) {
        
            if($bytes >= $arItem["VALUE"]) {
            
                $result = $bytes / $arItem["VALUE"];
                $result = str_replace(".", "," , strval(round($result, 2)))." ".$arItem["UNIT"];
                
                break;
                
            }
            
        }
        
        return $result;
        
    }
    ?>
    подключение - {include file="engine/modules/imginfo.php?poster=[xfvalue_доп_поле_с_картинкой]"}
     
  2. hent4iboys

    Забанен

    Регистрация:
    31 авг 2018
    Сообщения:
    695
    Лучших ответов:
    2
    Рейтинги:
    +140 / 27 / -0
    никак
     
Похожие темы
  1. Olegjan
    Ответов:
    0
    Просмотров:
    688
  2. templatelab
    Ответов:
    25
    Просмотров:
    2.513
  3. Puma08
    Ответов:
    4
    Просмотров:
    730
  4. Roman.U
    Ответов:
    6
    Просмотров:
    1.604
  5. Начинающий
    Ответов:
    7
    Просмотров:
    3.435
Загрузка...
Яндекс.Метрика