phpフォルダのいくつかのカプセル化された関数について
10078 ワード
/**
*
* @param string $filename
* @return boolean
*/
function checkFilename($filename){
$pattern = "/[\/,\*,<>,\?\|]/";
if (preg_match ( $pattern, $filename )) {
return false;
}else{
return true;
}
}
<?php
//
/**
* ,
* @param string $path
* @return array
*/
function readDirectory($path) {
$handle = opendir ( $path );
while ( ($item = readdir ( $handle )) !== false ) {
//. .. 2
if ($item != "." && $item != "..") {
if (is_file ( $path . "/" . $item )) {
$arr ['file'] [] = $item;
}
if (is_dir ( $path . "/" . $item )) {
$arr ['dir'] [] = $item;
}
}
}
closedir ( $handle );
return $arr;
}
//$path="file";
//print_r(readDirectory($path));
/**
*
* @param string $path
* @return int
*/
function dirSize($path){
$sum=0;
global $sum;
$handle=opendir($path);
while(($item=readdir($handle))!==false){
if($item!="."&&$item!=".."){
if(is_file($path."/".$item)){
$sum+=filesize($path."/".$item);
}
if(is_dir($path."/".$item)){
$func=__FUNCTION__;
$func($path."/".$item);
}
}
}
closedir($handle);
return $sum;
}
//$path="file";
//echo dirSize($path);
function createFolder($dirname){
//
if(checkFilename(basename($dirname))){
//
if(!file_exists($dirname)){
if(mkdir($dirname,0777,true)){
$mes=" ";
}else{
$mes=" ";
}
}else{
$mes=" ";
}
}else{
$mes=" ";
}
return $mes;
}
/**
*
* @param string $oldname
* @param string $newname
* @return string
*/
function renameFolder($oldname,$newname){
//
if(checkFilename(basename($newname))){
//
if(!file_exists($newname)){
if(rename($oldname,$newname)){
$mes=" ";
}else{
$mes=" ";
}
}else{
$mes=" ";
}
}else{
$mes=" ";
}
return $mes;
}
function copyFolder($src,$dst){
//echo $src,"---",$dst."----";
if(!file_exists($dst)){
mkdir($dst,0777,true);
}
$handle=opendir($src);
while(($item=readdir($handle))!==false){
if($item!="."&&$item!=".."){
if(is_file($src."/".$item)){
copy($src."/".$item,$dst."/".$item);
}
if(is_dir($src."/".$item)){
$func=__FUNCTION__;
$func($src."/".$item,$dst."/".$item);
}
}
}
closedir($handle);
return " ";
}
/**
*
* @param string $src
* @param string $dst
* @return string
*/
function cutFolder($src,$dst){
//echo $src,"--",$dst;
if(file_exists($dst)){
if(is_dir($dst)){
if(!file_exists($dst."/".basename($src))){
if(rename($src,$dst."/".basename($src))){
$mes=" ";
}else{
$mes=" ";
}
}else{
$mes=" ";
}
}else{
$mes=" ";
}
}else{
$mes=" ";
}
return $mes;
}
/**
*
* @param string $path
* @return string
*/
function delFolder($path){
$handle=opendir($path);
while(($item=readdir($handle))!==false){
if($item!="."&&$item!=".."){
if(is_file($path."/".$item)){
unlink($path."/".$item);
}
if(is_dir($path."/".$item)){
$func=__FUNCTION__;
$func($path."/".$item);
}
}
}
closedir($handle);
rmdir($path);
return " ";
}