我有一个存储在drupal文件表中的文件。我需要获取$ file对象以保存为CCK字段。如何从DB中的文件表中获取$ file对象?
答案 0 :(得分:1)
如果您知道文件的ID,则可以使用查询
$results = db_result(db_query("SELECT * FROM {files} WHERE fid = %d", 3));
您当然可以更改查询以匹配您的已知信息。
根据您的结果,您可能还想使用db_fetch_array
或db_fetch_object
。
如果在CCK FileField的帮助下,您可以使用$file = field_file_save_file($path, $validators, $drupal_destination)
保存。
现在您可以使用$ file数组存储为CCK字段。
答案 1 :(得分:0)
<?php
$fileObject = db_fetch_object(db_query("SELECT * FROM {files} WHERE fid = %d", $fid));
答案 2 :(得分:0)
也许不是最佳选择,但我使用field_file_load()。您可能必须将返回的文件强制转换为对象:
$file = (object)field_file_load($fid);