如何使用file_save_upload验证Drupal 6中的文件类型?

时间:2009-04-20 20:07:16

标签: php file drupal-6

我正在开发一个采用用户上传的CSV文件的模块。代码如下所示:

function foo_form_submit($form_id, &$form_state) {
  $validators = array();
  $dest = 'sites/phoenix.dev/files';
  $uploaded_file = file_save_upload('upload', $validators, $dest);
//some other stuff
}

正如您所看到的,我没有传递任何内容来验证“upload”字段中的文件实际上是.csv文件。这会导致稍后在函数中发生一些令人讨厌的事情。如何使用验证器检查扩展名是.csv,还是更好,以检查它实际上是.csv文件?

编辑:Google搜索没有提供太多帮助。

3 个答案:

答案 0 :(得分:3)

Drupal documentation on file_validate_extensions表示您想要更改此内容:

$validators = array();

对此:

$validators = array( 'file_validate_extensions' => array( 'csv' ) );

答案 1 :(得分:0)

我看不出你怎么能检查它是否是一个有效的CSV而没有真正尝试解析它并查看是否有任何错误。

答案 2 :(得分:0)

确实,不一定要验证文件的内容,因为目标可能是停止(例如).php脚本执行,并且扩展名为.csv apache不会将其作为php脚本运行