//取得参数值 FreeBSD
function get_key($keyName)
{
return do_command('sysctl', "-n $keyName");
}
// 确定执行文件位置 FreeBSD
function find_command($commandName)
{
$path = array('/bin', '/sbin', '/usr/bin', '/usr/sbin', '/usr/local/bin', '/usr/local/sbin');
foreach($path as $p)
{
if (@is_executable("$p/$commandName")) return "$p/$commandName";
}
return false;
}
function sys_freebsd()
{
//CPU
if (false === ($res['cpu']['num'] = get_key("hw.ncpu"))) return false;
$res['cpu']['detail'] = get_key("hw.model");
//LOAD AVG
if (false === ($res['loadAvg'] = get_key("vm.loadavg"))) return false;
$res['loadAvg'] = str_replace("{", "", $res['loadAvg']);
$res['loadAvg'] = str_replace("}", "", $res['loadAvg']);
//UPTIME
if (false === ($buf = get_key("kern.boottime"))) return false;
$buf = explode(' ', $buf);
$sys_ticks = time() - intval($buf[3]);
$min = $sys_ticks / 60;
$hours = $min / 60;
$days = floor($hours / 24);
$hours = floor($hours - ($days * 24));
$min = floor($min - ($days * 60 * 24) - ($hours * 60));
if ($days !== 0) $res['uptime'] = $days."天";
if ($hours !== 0) $res['uptime'] .= $hours."小时";
$res['uptime'] .= $min."分钟";
//MEMORY
if (false === ($buf = get_key("hw.physmem"))) return false;
$res['memTotal'] = round($buf/1024/1024, 2);
$buf = explode(" ", do_command("vmstat", ""));
$buf = explode(" ", trim($buf[2]));
$res['memFree'] = round($buf[5]/1024, 2);
$res['memUsed'] = ($res['memTotal']-$res['memFree']);
$res['memPercent'] = (floatval($res['memTotal'])!=0)?round($res['memUsed']/$res['memTotal']*100,2):0;
$buf = explode(" ", do_command("swapinfo", "-k"));
$buf = $buf[1];
preg_match_all("/([0-9]+)s+([0-9]+)s+([0-9]+)/", $buf, $bufArr);
$res['swapTotal'] = round($bufArr[1][0]/1024, 2);
$res['swapUsed'] = round($bufArr[2][0]/1024, 2);
$res['swapFree'] = round($bufArr[3][0]/1024, 2);
$res['swapPercent'] = (floatval($res['swapTotal'])!=0)?round($res['swapUsed']/$res['swapTotal']*100,2):0;
return $res;
}
//针探使用方法
sys_freebsd();
代码如下 | 复制代码 |
class download var $file_name = "hdwiki.zip";//下载来的文件名称 var $save_path = "./www.111cn.net";//下载到本地的文件路径 var $localfile;//下载到本地文件的路径和名称 var $warning;//警告信息 var $redown=0;//是否重新下载
function setfilename($file_name) function setsavepath($save_path) function setredown($redown) function download($url, $redown = 0, $save_path = 0, $file_name = 0) //下载文件到本地 function downloadfile() $this->localfile = $this->save_path."/".$this->file_name; if (!$this->checkurl()){ if (file_exists($this->localfile)){ } //打开远程文件 $fp = fopen($this->url, "rb"); //打开本地文件 $sp = fopen($this->localfile, "wb"); //下载远程文件 //echo "正在下载远程文件,请等待"; while (!feof($fp)){ } fwrite($sp, $tmpfile); |
if($_POST[submit]){
checkusername($_POST[username]);
if($_SESSION["code"]==$_POST[code])
{
$username= str_replace(" ","",$_POST[username]);
$password=md5($_POST[password].ALL_PS);
$sql="INSERT INTO `member`.`user_list` (`uid`, `m_id`, `username`, `password`) VALUES (NULL, '$_POST[select]', '$username','$password' )";
mysql教程_query($sql);
echo "注册成功";
}
else
{
echo "验证码错误"."<br>";
session_destroy();
}
}
function checkusername($username)
{
$sql2 = "select uid from user_list where username='".mysql_escape_string($username)."'";
$result = mysql_query($sql2) or die ('ERROR: '.mysql_error());
if(mysql_num_rows($result)>0)
{
echo "该用户名已经存在,请更换!";
exit();
}
else{
echo "<script> location.href='reg.php'</script>";
}
}
?>
<LINK href="common.css教程" type=text/css rel=stylesheet>
<form action="" method="post">
用户名:<input type="text" name="username" style="height:23px" /><br>
密 码:<input type="password" name="password" style="height:23px" /><br>
职 位:
<select name="select" size="1" style="height:23px" / >
<option value="1">1</option>
<option value="2">2</option>
</select>
<br/>
验证码:<input type="code" name="code" size="10" style="height:23px" />
<img" width=100% src="imgcode.php">
<br><br>
<input type="submit" name="submit" value="注册"/>
</form>
function listDirFiles()
{
// 设置目录
$dirs = './';
// 申明文件夹数组与文件数组
$aFolders = array() ;
$aFiles = array() ;
$ocfolder = opendir( $dirs ) ;//则该函数返回一个目录流,否则返回 false 以及一个 error。可以通过在函数名前加上 "@" 来隐藏 error 的输出。用法opendir(path,context)
while ( $sFile = readdir( $ocfolder ) ) // readdir() 函数返回由 opendir() 打开的目录句柄中的条目 语法:readdir(dir_stream)
{
if ( $sFile != '.' && $sFile != '..' )
{
if ( is_dir( $dirs . $sFile ) ) // 判断是否为目录,是返回ture否就返回false;
$aFolders[] = 'dirs:' . $sFile . '<br />' ;
else
{
$fsize = @filesize( $dirs . $sFile ) ; //filesize() 函数返回指定文件的大小。 语法:filesize(filename)
if ( !$fsize ) {
$fsize = 0 ;
}
if ( $fsize > 0 )
{
$fsize = round( $fsize / 1024 ) ;//round() 函数对浮点数进行四舍五入。 round(x,prec)
if ( $fsize < 1 ) $fsize = 1 ;
}
$aFiles[] = '文件名:' .$sFile . '文件大小=' . $fsize . 'KB<br />' ;
}
}
}
// 对目录进行自然排序
natcasesort( $aFolders ) ;//对数组自然排序 natcasesort(array)
foreach ( $aFolders as $sFolder )
{
echo $sFolder ;
}
// 对文件进行自然排序
natcasesort( $aFiles ) ; // 自然1-9,a-z排序natcasesort(array);
foreach ( $aFiles as $sFiles )
{
echo $sFiles ;
}
}
/*
调用方法当前有目录
dirs:1
dirs:www.111cn.net
文件名:1.php
文件名:2.php
*/
listDirFiles();
/*
输出结果为
dirs:1
dirs:www.111cn.net
文件名:1.php文件大小=1KB
文件名:2.php文件大小=2KB
用到函数解析
opendir
则该函数返回一个目录流,否则返回 false 以及一个 error。可以通过在函数名前加上 "@" 来隐藏 error 的输出。用法opendir(path,context)
is_dir
判断是否为目录,是返回ture否就返回false;
readdir
readdir() 函数返回由 opendir() 打开的目录句柄中的条目 语法:readdir(dir_stream)
filesize()
函数返回指定文件的大小。 语法:filesize(filename)
natcasesort(array)
natcasesort() 函数实现了“自然排序”,即数字从 1 到 9 的排序方法,字母从 a 到 z 的排序方法,短者优先,该函数不区分大小写。数组的索引与单元值保持关联
function ListFolders()
{
// 设置一个路径
$dir = "./";
// 设置一个存放文件件的数组
$aDir = array() ;
$oCurrentdir = opendir( $dir ) ; //打开目录
while ( $sFile = readdir( $oCurrentdir ) ) //读取当前目录所有子目录
{
if ( $sFile != '.' && $sFile != '..' && is_dir( $dir . $sFile ) )//判断是否为根目录
$aFolders[] = '目录:' .$sFile. '<br />' ;//输也目录
}
closedir( $oCurrentdir ) ;//判断刚才用opendir打开的目录
// Open the "Folders" node.
natcasesort( $aFolders ) ; //对数组进行自然排序不区分大小写的自然顺序算法对给定数组中的元素排序即数字从 1 到 9 的排序方法,字母从 a 到 z 的排序方法,短者优先
foreach ( $aFolders as $sFolder )
{
echo $sFolder ;
}
}
/*
测试,我们在当前目录有二个子目录
目录:1
目录:www.111cn.net
*/
getFolders();
/*
运行后得到结果为
目录:1
目录:www.111cn.net
常用函数解析:
array() 数据申明,可以用直接赋值 array(1,2,3,4);
opendir() 打开目录,opendir() 函数打开一个目录句柄,可由 closedir(),readdir() 和 rewinddir() 使用,若成功,则该函数返回一个目录流,否则返回 false 以及一个 error。可以通过在函数名前加上 "@" 来隐藏 error 的输出。
readdir 读取目录
cosedir判断目录
natcasesort() 函数用不区分大小写的自然顺序算法对给定数组中的元素排序。natcasesort() 函数实现了“自然排序”,即数字从 1 到 9 的排序方法,字母从 a 到 z 的排序方法,短者优先,该函数不区分大小写。数组的索引与单元值保持关联。如果成功,则该函数返回 TRUE,否则返回 FALSE。
本站整理与原创转载注明来自www.111cn.net