Aleksey

Aleksey

С нами с 04 апреля 2015; Место в рейтинге пользователей: #994
Дмитрий
15 апреля 2018, 10:22
1
0
О мамочки, нахрена, извините за грубость, пихать какие-то данные, которые легко вычислить, в отдельное поле? Захламлять БД, усложнять логику, мучать менеджеров? Можно написать простенький сниппет, хотя бы типа такого:
<?php
clearstatcache();
$size = filesize(MODX_BASE_PATH.'files/'.$input);
if ($size > 1024){
    $s = $size / 1024;
    $unit = 'Кб';
    if ($s > 1024){
        $s = $s / 1024;
        $unit = 'Мб';
    }
    $s = round($s);
} else {
    $s = $size;
    $unit = 'байт';
}
return $s.' '.$unit;
А потом выводить (тоже, как просто пример):

{var $filesize = $_modx->runSnippet('@FILE:snippets/getFilesize.php',[
    'input' => $file.file
])}
<span class="files-list__item-size">{$filesize}</span>
Ну или можно FileAttach использовать, что тоже очень хорошо.
Василий Наумкин
04 апреля 2015, 21:12
1
+1
Поправил, обновляйся.