ホームページ >バックエンド開発 >PHPチュートリアル >PHP ファイルのアップロード クラス_PHP チュートリアル
phpファイルアップロードクラスとphpファイルアップロード、phpアップロード画像やその他のphpアップロードコードは、異なる形式で表現されているだけです。
class Uploader
{
var $_base_dir = null;
var $_rel_dir = null;
var $_random_fname = false;
var $_random_fname_len = 5 ;
varフィルタ = null ;
var $_ftype_filter = null;
var $_origin_paths = array();
function Uploader( $base_dir, $rel_dir )
{
_base_dir = $base_dir;
$this-&g t;_rel_dir = $ rel_dir;
}
function setRandomFileName($random_fname, $random_fname_len=5)
{
$this->_random_fname = $random_fname;
$this->_random_fname_len = $random_fname_len ;
}
function setFileTypeFilter($filter)
{
$this ->_ftype_filter = $filter;
using using using using using using using using using out through out using off - -全体を通じて 使用する 使用する 使用する 使用する オフ アウト オフ アウト アウト アウト アウト アウト アウト '' ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''はいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいそうそうそうそうそうそうそうそうそう... if(array_key_exists($file, $this->_origin_paths) )
--------------------- ‐‐‐‐‐ -> $file => としての _origin_paths )
$result = $this->️添付ファイルをアップロードする
* @return 成功は成功を返します 失敗は失敗タイプを返します
サーバーに保存されている一時ファイルの名前。 E $ FNAME = $ _Files [$ File] ['name'] // クライアント マシン ファイルの元の名前。
$fsize = $_FILES[$file]['size']; -----------' ‐';
match = false; if( strto lower(strrchr($fname,'. ')=='。 'アップロードに失敗しました!' );
$new_path = $this->_rel_dir
$Error=$_FILES[$file]['エラー'];
switch($Erroe){
ケース 1:
return 'ErrExceedUploadMaxFileSize';
Break;
ケース 2:
return 'ErrExceedHtmlMaxFileSize';
Break;
case 3:
return 'ErrPartFileTrans';
Break;
// case 4:
// return 'ErrNoFileTrans';
// Break;
デフォルト:
return 'Success';
}
}
/*
* @desc 路径取得
* @return 路径
* @param なし
*/
function getFilePath()
{
return $this->_origin_paths;
}
function getFileAbsPath()
{
$paths = array();
foreach( $this->_origin_paths as $path )
{
$paths[] = $this->_base_dir . $path;
}
return $paths;
}
function delete( $fpath )
{
if( !empty($fpath) && is_file($this->_base_dir . $fpath) )
リンクを解除( $this- >_base_dir . $fpath ) または die( 'リンク解除エラー' );
}
function _getUniqueFileName( $fname, $len )
{
$timestamp = date('YmdHis');
srand((double)microtime() *1000000);
for( $i=0, $randfname=''; $i<$len; $i++ )
{
$num = rand(0, 35);
if( $num < 10 )
$randfname .= chr( ord('0')+$num );
else
$randfname .= chr( ord('a')+$num-10 );
}
$timestamp.'_' を返します。 $randfname.strto lower(strrchr($fname,'.'));
}
}
?>