Лучший способ распознать тип файла в [закрытом] php

Вы предоставили объект THREE.Vector4 в качестве цвета или второй аргумент? Просто копайтесь в коде, и это не было никакой логикой проверки типа, и это приведет к вашей ошибке, если указан неправильный тип. Также убедитесь, что вы указали правильный объект модели в качестве третьего аргумента, иначе рендер не будет знать, к какой модели применить цвета, когда у вас есть несколько моделей.

Подробнее об использовании этого метода можно узнать ниже: https://forge.autodesk.com/ru/docs/viewer/v6/reference/javascript/viewer3d/#setthemingcolor-dbid-color-model [ 111]

Редактировать: если в компоненте отсутствует материал, пожалуйста, посмотрите, как добавить собственный: https://forge.autodesk.com/blog/using-dynamic-texture-inside -custom-shaders

PS: Мы работаем над определениями TypeScript для Viewer и Forge SDK, и вскоре они могут быть выпущены. Оставайтесь с нами!

7
задан LuRsT 19 January 2009 в 14:43
поделиться

4 ответа

Можно использовать finfo_file

<?php
echo finfo_file(finfo_open(FILEINFO_MIME), "foo.png");
?>
11
ответ дан 6 December 2019 в 07:52
поделиться

я думаю, что Вы означаете finfo_file () обнаруживать mimetype

от примера php.net:

<?php
$finfo = finfo_open(FILEINFO_MIME); // return mime type ala mimetype extension
foreach (glob("*") as $filename) {
    echo finfo_file($finfo, $filename) . "\n";
}
finfo_close($finfo);
?>
4
ответ дан 6 December 2019 в 07:52
поделиться

Взгляд на "магические числа". Первые несколько байтов файлов обычно определяют, какой файл это. Например, первые несколько байтов GIF или 47 49 46 38 37 61 или 47 49 46 38 39 61, ASCII для GIF89a или GIF87a. Существует много других "магических чисел". См., что http://en.wikipedia.org/wiki/Magic_number_ (программирует) #Magic_numbers_in_files

Править: Я полагаю, что это более надежно, чем функции MIME на PHP.

5
ответ дан 6 December 2019 в 07:52
поделиться

Вы не можете доверять Типу контента, возвращенному Браузером. Это основано на расширении файла и может быть легко обмануто.

Поскольку stalepretzel упомянул это, лучший способ предположить, что тип контента файла использует магические числа. Если Ваш сервер работает *, отклоняют машину, можно использовать эту функцию:

<?php

function get_file_type($file) {
  if(function_exists('shell_exec') === TRUE) {
    $dump = shell_exec(sprintf('file -bi %s', $file));
    $info = explode(';', $dump);
    return $info[0];
  }
  return FALSE;
}

?>

Usage: $file_type = get_file_type('my_file_name.ext');

PD: проверьте/usr/share/magic.mime к большей информации.

3
ответ дан 6 December 2019 в 07:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: