此中将收藏我在工作中用到的一些PHP函数。有自己写的,也会有网上收集的。此文不断更新中
1.打印数组函数
function _print( $array )
{
echo ( "
" ); <br> print_r ( $array ); <br> echo ( "" );
2.截取字串
func_chgtitle
function func_chgtitle($str,$len)
{
if(strlen($str)>$len)
{
$tmpstr = "";
$strlen = $len;
for($i = 0; $i {
if(ord(substr($str, $i, 1)) > 0xa0)
{
$tmpstr .= substr($str, $i, 2);
$i++;
}
else
$tmpstr .= substr($str, $i, 1);
}
return $tmpstr."";
}
else
{
return $str;
}
}
3.加载文件
loadFile
function loadFile($filepath)
{
$filecontent = "";
$fptr = fopen($filepath,"r");
if ($fptr)
{
while ($content = fgets($fptr,4096))
{
$filecontent .= $content;
}
fclose($fptr);
}
return $filecontent;
}
4.下载文件
downloadFile
function downloadFile($path,$fileInfo)
{
$target_file = $path.$fileInfo['fileid'];
$file_content = loadFile($target_file);
header("Content-Disposition: attachment; filename=".$fileInfo['filename']);
header("Content-type: ".$fileInfo['filetype']);
header("Content-Length: ".$fileInfo['filesize']);
echo $file_content;
}
5.数组排序
代码
/* *
* @package BugFree
* @version $Id: FunctionsMain.inc.php,v 1.32 2005/09/24 11:38:37 wwccss Exp $
*
*
* Sort an two-dimension array by some level two items use array_multisort() function.
*
* sysSortArray($Array,"Key1","SORT_ASC","SORT_RETULAR","Key2"……)
* @author Chunsheng Wang
* @param array $ArrayData the array to sort.
* @param string $KeyName1 the first item to sort by.
* @param string $SortOrder1 the order to sort by("SORT_ASC"|"SORT_DESC")
* @param string $SortType1 the sort type("SORT_REGULAR"|"SORT_NUMERIC"|"SORT_STRING")
* @return array sorted array.
*/
function sysSortArray( $ArrayData , $KeyName1 , $SortOrder1 = " SORT_ASC " , $SortType1 = " SORT_REGULAR " )
{
if ( ! is_array ( $ArrayData ))
{
return $ArrayData ;
}
// Get args number.
$ArgCount = func_num_args ();
// Get keys to sort by and put them to SortRule array.
for ( $I = 1 ; $I {
$Arg = func_get_arg ( $I );
if ( ! eregi ( " SORT " , $Arg ))
{
$KeyNameList [] = $Arg ;
$SortRule [] = ' $ ' . $Arg ;
}
else
{
$SortRule [] = $Arg ;
}
}
// Get the values according to the keys and put them to array.
foreach ( $ArrayData AS $Key => $Info )
{
foreach ( $KeyNameList AS $KeyName )
{
${ $KeyName }[ $Key ] = $Info [ $KeyName ];
}
}
// Create the eval string and eval it.
if ( count ( $ArrayData ) > 0 )
{
$EvalString = ' array_multisort( ' . join ( " , " , $SortRule ) . ' ,$ArrayData); ' ;
eval ( $EvalString );
}
return $ArrayData ;
}