Drupal 6 Получить файловый объект из файлового хранилища - PullRequest
1 голос
/ 03 марта 2011

У меня есть файл, хранящийся в таблице файлов drupal. Мне нужно получить объект $ file для сохранения в виде поля CCK. Как я могу получить объект $ file из таблицы файлов в БД?

Ответы [ 3 ]

1 голос
/ 03 марта 2011

Если вы знаете идентификатор файла, вы можете просто использовать запрос

$results = db_result(db_query("SELECT * FROM {files} WHERE fid = %d", 3));

Конечно, вы можете изменить запрос в соответствии с известной вам информацией.

В зависимости от вашего результата, вы также можете использовать db_fetch_array или db_fetch_object.

Тогда вы можете использовать $file = field_file_save_file($path, $validators, $drupal_destination) для сохранения, если с помощью CCK FileField .

Теперь вы можете использовать массив $ file для хранения в качестве поля CCK.

0 голосов
/ 05 февраля 2014

Возможно, не лучший вариант, но я использую field_file_load () .Возможно, вам придется преобразовать возвращаемый файл в объекты:

 $file = (object)field_file_load($fid);
0 голосов
/ 21 сентября 2013
<?php
$fileObject = db_fetch_object(db_query("SELECT * FROM {files} WHERE fid = %d", $fid));
...