【问题标题】:How can I validate Symfony2 filenames?如何验证 Symfony2 文件名?
【发布时间】:2013-08-19 13:18:01
【问题描述】:

以下代码只会验证上传文件的临时文件名(类似于 /tmp/phpsABCD)

use Symfony\Component\HttpFoundation\File\UploadedFile;
use Symfony\Component\Validator\Constraints as Assert;

/**
 * @Assert\NotBlank()
 * @Assert\Regex(
 *     pattern="/^[a-zA-Z0-9\/._-]+$/",
 *     message="Invalid filename"
 * )
 * @var UploadedFile
 */
private $file;

但我想避免用户上传带有变音符号 (äü)、方括号和类似字符的文件。验证原始文件名的最佳方法是什么?

【问题讨论】:

标签: php symfony symfony-2.2


【解决方案1】:

你不能。 PHP是服务器端。您必须使用 JavaScript 在客户端验证文件名,或者使用 JavaScript 库为您异步处理文件上传。

你可以在这里玩:http://blueimp.github.io/jQuery-File-Upload/

干杯。

【讨论】:

    猜你喜欢
    • 2021-02-25
    • 1970-01-01
    • 2013-12-18
    • 1970-01-01
    • 2018-02-19
    • 1970-01-01
    • 1970-01-01
    • 2015-11-05
    相关资源
    最近更新 更多