Rumah pembangunan bahagian belakang tutorial php php 上传类(自家用)_PHP

php 上传类(自家用)_PHP

Jun 01, 2016 pm 12:32 PM
muat naik kegunaan isi rumah dokumen

/**
* File up load class
* @version 1.0.0 (Thu Aug 18 01:32:39 CST 2005)
* @author sanshi
*/
class upLoad
{
/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:00:18 CST 2005
* @param string $info 文件内容
* @param string $fileName 生成的文件名
* @return boolean 建立成功返回true
* @deprecated
* 建立html文件
*/
function createHtml( $info ,$fileName )
{
}
/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:03:09 CST 2005
* @return void
* @deprecated
* 构造函数
*/
function downLoad()
{}
/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:03:55 CST 2005
* @param string $fileField 在表单中的字段名
* @param string $length 限制的长度
* @return boolean 成功返回true
* @deprecated
* 功能实现函数
*/
function init($fileField,$length='')
{
$files = $_FILES[$fileField];
//用户名需要改动,根据自己的实际情况做改动
$userName = 'sanshi';
$fileName = $files['name'];
$fileType = $files['type'];
$fileTemp = $files['tmp_name'];
$fileSize = empty( $length ) ? ($files['size'] 10) : $length;
$fileError= $files['error'];//这块也许php4中没有
//改为
//if( $this->_isType( $fileName ) || $this->_isBig( $length ) )
if( !$this->_isType( $fileName ) || $this->_isBig( $length ) || $fileError != 0 )
{
//print_r ($files);
return false;
}else{
$path = $this->_createDir( $userName );//取得路径
$createFileName = $userName . "_" . time();//设置当前文件名
$createFileType = $this->getFileType($fileName);//设置文件类别
return @move_uploaded_file($fileTemp,$path.$createFileName.'.'.$createFileType) ? true : false;
}
}

/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:07:43 CST 2005
* @param int $length 上传限制的大小
* @return boolean 超过返回true
* @deprecated
* 判断是否超过预定大小
*/
function _isBig($length)
{
$bigest = '';
return $big > $bigest ? true : false;
}
/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:08:55 CST 2005
* @param string $fileName 文件名
* @return string $fileType 文件后缀
* @deprecated
* 取得文件后缀(只取得文件的最后一个后缀名)
*/
function getFileType($fileName)
{
return end(explode('.',$fileName));
}
/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:10:41 CST 2005
* @param string $fileName 文件名
* @param boolean $method 是否检查多个后缀默认false
* @param int $postFix 后缀个数默认为2
* @return boolean 存在返回true
* @deprecated
* 检查文件的后缀是否在类别数组中,类别数组自己设置
* 如果$method设置为true则检查文件有几个后缀
*/
function _isType($fileName,$method='false',$postFix=2)
{
//设置类别数组
$type = array('jpeg',
'gif',
'bmp',
'exe');
$fileName = strtolower( $fileName );
$fileTypeArray = explode( '.',$fileName );
$fileType = end( $fileTypeArray );
//判断是否有一个文件有多个后缀
if($method)
{
if( count( $fileTypeArray ) > (is_int($postFix) ? $postFix : 2) )
{
return false;
}
}
return in_array($fileType,$type);
}

/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:17:19 CST 2005
* @param string $userName
* @return string $path
* @deprecated
* 建立目录 目录格式 年/月/日/用户名/
* 权限为755
*/
function _createDir($userName)
{
$root = '';
$pathSign = DIRECTORY_SEPARATOR;
$y = date('Y').$pathSign;
$m = date('m').$pathSign;
$d = date('d').$pathSign;
$path = $root . $y . $m . $d . $userName;
$dirArray = explode( $pathSign,$path);
$tempDir='';
foreach ( $dirArray as $dir)
{
$tempDir.= $dir.$pathSign;
$isFile = file_exists( $tempDir );
clearstatcache();
if( ! $isFile && !is_dir( $tempDir ) )
{
@mkdir($tempDir,0755);
}
}
return $path . $pathSign;
}
/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:19:32 CST 2005
* @param  string $dirName 目录名
* @return   boolean 可以操作返回true
* @deprecated
* 判断操作是否在上传目录
*/
function _isDel($dirName)
{
//注意upLoadDir,一定要与真正使用目录相对应
$upLoadDir = '';
$upLoadDir = preg_replace('/\\//','\/',$upLoadDir);
$format = "/^{$upLoadDir}/";
return preg_match( $format,$dirName );
}
/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:25:58 CST 2005
* @param string $fileName 文件名
* @return boolean 删除文件成功返回true
* @deprecated
* 删除文件
*/
function delFile( $fileName )
{
$cur_dir = dirname(trim($fileName));
if( $this->_isDel( $cur_dir ) )
{
return @unlink( $fileName ) ? true : false;
}else{
return false;
}
}
/**
*
* @author sanshi
* @version 1.0.0 Thu Aug 18 01:27:43 CST 2005
* @param string $dieName 目录名
* @return boolean 删除成功返回true
* @deprecated
* 删除目录 目录下如果有文件不能删除
*/
function delDir( $dirName )
{
if( $this->_isDel($dirName) && is_dir( $dirName ) )
{
return @rmdir( $dirName ) ? true : false;
}else{
return false;
}
}

}
?>
//使用
/*
include 'upLoad.class.php';
$up = new upLoad();
if($up->init("file"))
{
echo 'success';
}else{
echo 'failure';
}
*/
?>

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk memulihkan fail WeChat yang telah tamat tempoh Bolehkah fail WeChat yang telah tamat tempoh dipulihkan? Bagaimana untuk memulihkan fail WeChat yang telah tamat tempoh Bolehkah fail WeChat yang telah tamat tempoh dipulihkan? Feb 22, 2024 pm 02:46 PM

Buka WeChat, pilih Tetapan dalam Saya, pilih Umum dan kemudian pilih Ruang Storan, pilih Pengurusan dalam Ruang Storan, pilih perbualan di mana anda ingin memulihkan fail dan pilih ikon tanda seru. Tutorial Model Berkenaan: iPhone13 Sistem: iOS15.3 Versi: WeChat 8.0.24 Analisis 1 Mula-mula buka WeChat dan klik pilihan Tetapan pada halaman Saya. 2 Kemudian cari dan klik Pilihan Umum pada halaman tetapan. 3Kemudian klik Ruang Storan pada halaman umum. 4 Seterusnya, klik Urus pada halaman ruang storan. 5Akhir sekali, pilih perbualan di mana anda ingin memulihkan fail dan klik ikon tanda seru di sebelah kanan. Tambahan: Fail WeChat biasanya tamat tempoh dalam beberapa hari Jika fail yang diterima oleh WeChat belum diklik, sistem WeChat akan mengosongkannya selepas 72 jam Jika fail WeChat telah dilihat.

Foto tidak boleh membuka fail ini kerana format tidak disokong atau fail rosak Foto tidak boleh membuka fail ini kerana format tidak disokong atau fail rosak Feb 22, 2024 am 09:49 AM

Di Windows, apl Photos ialah cara yang mudah untuk melihat dan mengurus foto dan video. Melalui aplikasi ini, pengguna boleh mengakses fail multimedia mereka dengan mudah tanpa memasang perisian tambahan. Walau bagaimanapun, kadangkala pengguna mungkin menghadapi beberapa masalah, seperti menghadapi mesej ralat "Fail ini tidak boleh dibuka kerana format tidak disokong" semasa menggunakan apl Foto atau kerosakan fail semasa cuba membuka foto atau video. Keadaan ini boleh mengelirukan dan menyusahkan pengguna, memerlukan beberapa penyiasatan dan pembetulan untuk menyelesaikan isu tersebut. Pengguna melihat ralat berikut apabila mereka cuba membuka foto atau video pada apl Foto. Maaf, Foto tidak boleh membuka fail ini kerana format tidak disokong atau fail pada masa ini

Persediaan untuk penyingkiran mengambil masa yang lama dalam Windows 11/10 Persediaan untuk penyingkiran mengambil masa yang lama dalam Windows 11/10 Feb 19, 2024 pm 07:42 PM

Dalam artikel ini, kami akan memperkenalkan cara menyelesaikan masalah gesaan "Bersedia untuk memadam" apabila memadam fail atau folder dalam sistem Windows. Gesaan ini bermakna sistem sedang menjalankan beberapa operasi latar belakang, seperti menyemak kebenaran fail, mengesahkan sama ada fail itu diduduki oleh program lain, mengira saiz item yang akan dipadamkan, dsb. Kami akan memberikan anda beberapa penyelesaian untuk memastikan anda berjaya memadamkan fail anda tanpa menunggu terlalu lama. Mengapakah Windows mengambil masa yang lama untuk memadam fail? Masa yang diperlukan Windows untuk menyediakan fail untuk pemadaman dipengaruhi oleh pelbagai faktor, termasuk saiz fail, kelajuan peranti storan dan proses latar belakang. Gesaan "Bersedia untuk memadam" yang panjang atau tersekat mungkin menunjukkan sumber sistem yang tidak mencukupi, ralat cakera atau isu sistem fail. wujud

Bolehkah fail format Tmp dipadamkan? Bolehkah fail format Tmp dipadamkan? Feb 24, 2024 pm 04:33 PM

Fail format Tmp ialah format fail sementara yang biasanya dihasilkan oleh sistem atau program komputer semasa pelaksanaan. Tujuan fail ini adalah untuk menyimpan data sementara untuk membantu program berjalan dengan betul atau meningkatkan prestasi. Sebaik sahaja pelaksanaan program selesai atau komputer dimulakan semula, fail tmp ini selalunya tidak diperlukan lagi. Oleh itu, untuk fail format Tmp, ia pada asasnya boleh dipadam. Selain itu, pemadaman fail tmp ini boleh mengosongkan ruang cakera keras dan memastikan operasi normal komputer. Walau bagaimanapun, sebelum memadam fail format Tmp, kita perlu

Bagaimana untuk memindahkan fail dari Cakera Awan Quark ke Cakera Awan Baidu? Bagaimana untuk memindahkan fail dari Cakera Awan Quark ke Cakera Awan Baidu? Mar 14, 2024 pm 02:07 PM

Quark Netdisk dan Baidu Netdisk pada masa ini merupakan perisian Netdisk yang paling biasa digunakan untuk menyimpan fail Jika anda ingin menyimpan fail dalam Quark Netdisk ke Baidu Netdisk, bagaimana anda melakukannya? Dalam isu ini, editor telah menyusun langkah tutorial untuk memindahkan fail dari komputer Quark Network Disk ke Baidu Network Disk Mari kita lihat cara mengendalikannya. Bagaimana untuk menyimpan fail dari Cakera Rangkaian Quark ke Cakera Rangkaian Baidu? Untuk memindahkan fail daripada Cakera Rangkaian Quark ke Cakera Rangkaian Baidu, anda perlu memuat turun fail yang diperlukan terlebih dahulu daripada Cakera Rangkaian Quark, kemudian pilih folder sasaran dalam klien Cakera Rangkaian Baidu dan bukanya. Kemudian, seret dan lepaskan fail yang dimuat turun daripada Cakera Awan Quark ke dalam folder yang dibuka oleh klien Cakera Awan Baidu, atau gunakan fungsi muat naik untuk menambah fail pada Cakera Awan Baidu. Pastikan anda menyemak sama ada fail telah berjaya dipindahkan dalam Cakera Awan Baidu selepas muat naik selesai. Itu sahaja

Apa yang perlu dilakukan jika kod ralat 0x80004005 muncul Editor akan mengajar anda cara menyelesaikan kod ralat 0x80004005. Apa yang perlu dilakukan jika kod ralat 0x80004005 muncul Editor akan mengajar anda cara menyelesaikan kod ralat 0x80004005. Mar 21, 2024 pm 09:17 PM

Apabila memadam atau menyahmampat folder pada komputer anda, kadangkala kotak dialog segera "Ralat 0x80004005: Ralat Tidak Ditentukan" akan muncul Bagaimana anda harus menyelesaikan situasi ini? Sebenarnya terdapat banyak sebab mengapa kod ralat 0x80004005 digesa, tetapi kebanyakannya disebabkan oleh virus. Kami boleh mendaftarkan semula dll untuk menyelesaikan masalah tersebut . Sesetengah pengguna digesa dengan kod ralat 0X80004005 apabila menggunakan komputer mereka Ralat 0x80004005 disebabkan terutamanya oleh komputer tidak mendaftarkan fail perpustakaan pautan dinamik tertentu dengan betul, atau oleh tembok api yang tidak membenarkan sambungan HTTPS antara komputer dan Internet. Jadi bagaimana pula

Bagaimana untuk memasang fail GHO Bagaimana untuk memasang fail GHO Feb 19, 2024 pm 10:06 PM

Fail gho ialah fail imej GhostImage, yang biasanya digunakan untuk menyandarkan keseluruhan cakera keras atau data partition ke dalam fail. Dalam beberapa kes tertentu, kami perlu memasang semula fail gho ini kembali ke cakera keras untuk memulihkan cakera keras atau partition kepada keadaan sebelumnya. Berikut akan memperkenalkan cara memasang fail gho. Pertama, sebelum pemasangan, kita perlu menyediakan alat dan bahan berikut: Fail gho entiti: Pastikan anda mempunyai fail gho yang lengkap, yang biasanya mempunyai akhiran .gho dan mengandungi sandaran

Apakah fail hiberfil.sys? Bolehkah hiberfil.sys dipadamkan? Apakah fail hiberfil.sys? Bolehkah hiberfil.sys dipadamkan? Mar 15, 2024 am 09:49 AM

Baru-baru ini, ramai netizen bertanya kepada editor, apakah itu fail hiberfil.sys? Bolehkah hiberfil.sys mengambil banyak ruang pemacu C dan dipadamkan? Editor boleh memberitahu anda bahawa fail hiberfil.sys boleh dipadamkan. Mari kita lihat butiran di bawah. hiberfil.sys ialah fail tersembunyi dalam sistem Windows dan juga fail hibernasi sistem. Ia biasanya disimpan dalam direktori akar pemacu C, dan saiznya bersamaan dengan saiz memori yang dipasang sistem. Fail ini digunakan apabila komputer sedang hibernasi dan mengandungi data memori sistem semasa supaya ia boleh dipulihkan dengan cepat kepada keadaan sebelumnya semasa pemulihan. Oleh kerana saiznya adalah sama dengan kapasiti memori, ia mungkin mengambil jumlah ruang cakera keras yang lebih besar. hiber

See all articles