2011-07-07 23 views

答えて

1

もちろんです。しかし、あなたの声明にはいくらかの混乱があります。アップロードしたファイルのタイプとサイズを制限することを意味すると思います。そうでなければ、単に "sampleFile.ext"という名前で簡単にファイルを作成し、特定のサイズのスペースをコンテンツに埋め込むことができます。役に立った新しいオブジェクトと

スタート:

$uploaded_file = new Zend_File_Transfer_Adapter_Http(); 

ファイルサイズバリ:

// Set a file size with 20000 bytes 
    $upload->addValidator('Size', false, 20000); 

    // Set a file size with 20 bytes minimum and 20000 bytes maximum 
    $upload->addValidator('Size', false, array('min' => 20, 'max' => 20000)); 

    // Set a file size with 20 bytes minimum and 20000 bytes maximum and 
    // a file count in one step 
    $upload->setValidators(array(
      'Size' => array('min' => 20, 'max' => 20000), 
      'Count' => array('min' => 1, 'max' => 3), 
    )); 

拡張バリ:

// Limit the extensions to jpg and png files 
    $upload->addValidator('Extension', false, 'jpg,png'); 

    // Limit the extensions to jpg and png files but use array notation 
    $upload->addValidator('Extension', false, array('jpg', 'png')); 

    // Check case sensitive 
    $upload->addValidator('Extension', false, array('mo', 'png', 'case' => true)); 
    if (!$upload->isValid('C:\temp\myfile.MO')) { 
     print 'Not valid because MO and mo do not match with case sensitivity;'; 
    } 

除外するファイル拡張子のバリデータ:

// Do not allow files with extension php or exe 
    $upload->addValidator('ExcludeExtension', false, 'php,exe'); 

    // Do not allow files with extension php or exe, but use array notation 
    $upload->addValidator('ExcludeExtension', false, array('php', 'exe')); 

    // Check in a case-sensitive fashion 
    $upload->addValidator('ExcludeExtension', 
      false, 
      array('php', 'exe', 'case' => true)); 
    $upload->addValidator('ExcludeExtension', 
      false, 
      array('php', 'exe', 'case' => true)); 

ファイル名を変更するには、フィルタを使用してください:ファイルバリデータ用Zend_File_Transfer_Http How to set uploaded file name

公式参照:http://framework.zend.com/manual/1.11/en/zend.file.transfer.validators.html#zend.file.transfer.validators.extension

関連する問題