有用的函式 檔案處理及其它

2021-06-03 08:57:43 字數 3502 閱讀 3594

1.檔案尺寸大小轉換

/** 

轉換附件大小單位 

@param string $filesize 檔案大小 kb 

*/ function changefilesize($filesize) 

elseif($filesize >= 1048576) 

elseif($filesize >= 1024) 

else 

return $filesize; }

複製**

2.按比例改變大小

/** 

按照比例改變大小(非生成縮圖) 

@param string $img 路徑

@param int $max_w 最大縮放寬 

@param int $max_h 最大縮放高 

*/ function chimagesize ($img,$max_w,$max_h) 

else if(($w_ratio * $h) < $max_h) 

else 

$tn['rc_w'] = $w; 

$tn['rc_h'] = $h; 

return $tn ; }

複製**

3.建立多級目錄

function mk_dir( $target ) elseif ( is_dir( dirname( $target ) ) )  

// if the above failed, attempt to create the parent node, then try again. 

if ( ( $target != '/' ) && ( mk_dir( dirname( $target ) ) ) ) 

return mk_dir( $target ); 

return false; }

複製**

4.判斷是絕對路徑還是相對路徑

function path_is_absolute( $path ) == '.' ) 

return false; 

// windows allows absolute paths like this 

if ( preg_match('#^[a-za-z]:\\\\#', $path) ) 

return true; 

// a path starting with / or \ is absolute; anything else is relative 

return (bool) preg_match('#^[/\\\\]#', $path); }

複製**

5.得到檔案型別

function get_filetype($filename)  

} return compact( 'ext', 'type' ); }

複製**

6.遍歷資料夾中檔案

function list_files( $folder = '', $levels = 100 ) else  

} } 

@closedir( $dir ); 

return $files; }

複製**

7.判斷爬蟲函式

複製**

8.判斷遠端檔案是否存在

php 

/* 函式:remote_file_exists 

功能:判斷遠端檔案是否存在 

引數: $url_file -遠端檔案url

返回:存在返回true,不存在或者其他原因返回false 

*/ function remote_file_exists($url_file) 

$url_arr = parse_url($url_file); 

if (!is_array($url_arr) || empty($url_arr)) 

//獲取請求資料

$host = $url_arr['host']; 

$path = $url_arr['path'] ."?".$url_arr['query']; 

$port = isset($url_arr['port']) ?$url_arr['port'] : "80"; 

//連線伺服器

$fp = fsockopen($host, $port, $err_no, $err_str,30); 

if (!$fp) 

//構造請求協議 

//傳送請求 

fwrite($fp,$request_str); 

$first_header = fgets($fp, 1024); 

fclose($fp); 

//判斷檔案是否存在 

if (trim($first_header) == "") 

if (!preg_match("/200/", $first_header)) 

return true; }

複製**

9.多重判斷檔案函式刪除

function delete_file($file)  } 

clearstatcache(); 

if(file_exists($file)) 

else  } 

else  }

複製**

1.刪除

目錄(含檔案)

function removedir($dirname)

$handle = opendir($dirname);

while(($file = readdir($handle)) !== false)

}closedir($handle);

$result = rmdir($dirname) ? true : false;

return $result;}

複製**

2.複製目錄

function copydir($source, $destination)

if(! is_dir($destination))

}$handle = opendir($source);

while(($file = readdir($handle)) !== false)

else}}

}closedir($handle);

return $result;}

複製**

3.影象檔案判別函式

function imagetype($file)

return 'unknown';}

複製**

pthread join函式及其它執行緒終止函式

pthread join使乙個執行緒等待另乙個執行緒結束。中如果沒有pthread join主線程會很快結束從而使整個程序結束,從而使建立的執行緒沒有機會開始執行就結束了。加入pthread join後,主線程會一直等待直到等待的執行緒結束自己才結束,使建立的執行緒有機會執行。所有執行緒都有乙個執行...

查詢今天改過的檔案及其它 linux find

來自 1.find 引數 mtime n,代表 n 1 24小時內的檔案,下標從0開始 找24小時內修改的檔案,並考到上一級目錄 find apk mtime 0 exec cp mtime means modified time.0 means in first 24hours later.找今天...

PHP陣列回憶筆記 其它有用的陣列函式

常用的返回陣列大小的函式 count 攜帶乙個引數陣列。array count values 攜帶乙個引數陣列,返回乙個包含鍵值對的陣列,其中的鍵為所有引數陣列中不重複的值,與其對應的值為鍵在引數陣列中出現的頻度。array unique 攜帶乙個引數陣列,返回的陣列為引數陣列去掉所有重複項後的新陣...