0

我正在开发一个采用用户上传的 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
}

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

编辑:谷歌搜索并没有发现任何有用的东西。

4

3 回答 3

3

关于 file_validate_extensions 的 Drupal 文档建议您更改此内容:

$validators = array();

对此:

$validators = array( 'file_validate_extensions' => array( 'csv' ) );
于 2009-04-20T22:35:00.897 回答
0

我看不出如何在不实际尝试解析它并查看是否有任何错误的情况下检查它是否是有效的 CSV。

于 2009-04-20T21:44:32.233 回答
0

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

于 2010-01-21T21:16:38.083 回答