查看服务器($_SERVER)变量'; $menu .= ' | 查看环境($_ENV)变量'; $menu .= ' | 查看COOKIE'; if(strpos($dis_fun,"phpinfo")===false){ $menu .= ' | 查看PHPINFO'; } } ?> PHP探针(ITlearner PhpCheck) V1.0 - <?php echo php_uname('n'); ?>

PHP探针 - (ITlearner)

1099511627776, // pow( 1024, 4) 'GB' => 1073741824, // pow( 1024, 3) 'MB' => 1048576, // pow( 1024, 2) 'KB' => 1024, // pow( 1024, 1) 'B ' => 1, // pow( 1024, 0) ); foreach ( $quant as $unit => $mag ) if ( doubleval($bytes) >= $mag ) return number_format( $bytes / $mag, $decimals ) . ' ' . $unit; return false; } function get_ini($var){ switch($res = ini_get($var)){ case 0: return 'Off 否'; break; case 1: return 'On 是'; break; default:return $res; } } if($ac == ''){ $s = $_SERVER; $path_parts = pathinfo($s['DOCUMENT_ROOT'].$script_name); $dirname = $path_parts['dirname']; function get_linux(){ global $cpu,$mem,$sys; if (false === ($str = @file("/proc/cpuinfo"))) return false; $str = implode("", $str); @preg_match_all("/model\sname\s+\:(.*)[\r\n]+/isU", $str, $match1); @preg_match_all("/cache\ssize\s+:\s*(.*)[\r\n]+/isU", $str, $match2); $cpu['num'] = count($match1[1]); for($i=0;$i<$cpu['num'];$i++){ $cpu['model'][] = $match1[1][$i]; $cpu['cache'][] = $match2[1][$i]; } if($cpu['num']){ $cpu['model'] = implode("
", $cpu['model']); $cpu['cache'] = implode("
", $cpu['cache']); } // MEMORY if (false === ($str = @file("/proc/meminfo"))) return false; $str = implode("", $str); preg_match_all("/MemTotal\s{0,}\:+\s{0,}([\d\.]+).+?MemFree\s{0,}\:+\s{0,}([\d\.]+).+?Cached\s{0,}\:+\s{0,}([\d\.]+).+?SwapTotal\s{0,}\:+\s{0,}([\d\.]+).+?SwapFree\s{0,}\:+\s{0,}([\d\.]+)/s", $str, $matches); $mem['Total'] = size_format($matches[1][0]*1024); $mem['Free'] = size_format($matches[2][0]*1024); $mem['Cached'] = size_format($matches[3][0]*1024); $mem['SwapTotal'] = size_format($matches[4][0]*1024); $mem['SwapFree'] = size_format($matches[5][0]*1024); $mem['RealFree'] = size_format(($matches[2][0] + $matches[3][0])*1024); $mem['info'] = '物理内存:'.$mem['Total'].',Swap内存:'.$mem['SwapTotal'].'。
目前物理内存空闲'.$mem['Free'].',Swap内存空闲'.$mem['SwapFree'].'。
已使用的物理内存中,内存缓存有'.$mem['Cached'].',物理内存实际可用:'.$mem['RealFree'].'。'; $sys['os'] = php_uname('s').' 版本:'.php_uname('r'); } function GetWMI($wmi,$strClass, $strValue = array()) { $arrData = array(); $objWEBM = $wmi->Get($strClass); $arrProp = $objWEBM->Properties_; $arrWEBMCol = $objWEBM->Instances_(); foreach($arrWEBMCol as $objItem) { @reset($arrProp); $arrInstance = array(); foreach($arrProp as $propItem) { eval("\$value = \$objItem->" . $propItem->Name . ";"); if (empty($strValue)) { $arrInstance[$propItem->Name] = trim($value); } else { if (in_array($propItem->Name, $strValue)) { $arrInstance[$propItem->Name] = trim($value); } } } $arrData[] = $arrInstance; } return $arrData; } function get_win($isapache){ global $cpu,$sys,$mem; if (PHP_VERSION >= 5 && $isapache) { $objLocator = new COM("WbemScripting.SWbemLocator"); $wmi = $objLocator->ConnectServer(); $prop = $wmi->get("Win32_PnPEntity"); $cpuinfo = GetWMI($wmi,"Win32_Processor", array("Name","L2CacheSize","NumberOfCores")); if(isset($cpuinfo[0]['NumberOfCores'])){; $cpu['num'] = $cpuinfo[0]['NumberOfCores']; }else{ $cpu['num'] = 1; } for ($i=0;$i<$cpu['num'];$i++){ $cpu['model'] .= $cpuinfo[0]['Name']."
"; $cpu['cache'] .= $cpuinfo[0]['L2CacheSize']." KB
"; } // SYSINFO $sysinfo = GetWMI($wmi,"Win32_OperatingSystem", array('LastBootUpTime','TotalVisibleMemorySize','FreePhysicalMemory','Caption','CSDVersion','SerialNumber','InstallDate')); $sys['os'] = $sysinfo[0]['Caption']." ".$sysinfo[0]['CSDVersion']." 安装于".date('Y年m月d日H:i:s',strtotime(substr($sysinfo[0]['InstallDate'],0,14))); // MEMORY $mem['Total'] = size_format($sysinfo[0]['TotalVisibleMemorySize']*1024); $mem['Free'] = size_format($sysinfo[0]['FreePhysicalMemory']*1024); $mem['info'] = '物理内存:'.$mem['Total'].',空闲内存:'.$mem['Free']; } else { $cpu['model'] = getenv('PROCESSOR_IDENTIFIER')?getenv('PROCESSOR_IDENTIFIER'):'获取失败'; $cpu['cache'] = '不详'; $cpu['num'] = getenv('NUMBER_OF_PROCESSORS')?getenv('NUMBER_OF_PROCESSORS'):'获取失败'; $mem['info'] = '获取失败'; } if(!$sys['os']) $sys['os'] = php_uname('s').' 版本:'.php_uname('r'); } $cpu = array('model'=>'','cache'=>''); if(PHP_OS == 'Linux'){ get_linux(); }elseif(strtoupper(substr(PHP_OS, 0, 3)) === 'WIN'){ if(strpos(strtolower($s['SERVER_SOFTWARE']),"apache")!==false){ get_win(1); }else{ get_win(0); } } ?>

服务器主要参数

主机名 操作系统
CPU信息 CPU二级缓存
内存信息
WEB服务器 服务器域名
服务器IP 服务器端口
管理员 服务器时间
根目录
系统负载
Apache模块:
磁盘信息 当前磁盘分区下 可用空间: 总空间:

$value){ echo ''; }?>
变量名
'.$key.''.$value.'

PHP主要参数

PHP版本 PHP运行方式
Zend引擎 ZEND编译运行
运行于安全模式 <? ?>支持
PHP内存限制 内存使用
已加截的模块
动态加载模块 PHP包含路径:
最多POST: 最大可上传:
被禁用的函数 脚本超时时间

PHP安全选项

' )){?>
显示错误信息 display_errors 生产环境建议关闭。'; }else{ echo 'Off 已关闭。'; } ?>
自动全局变量 register_globals 强烈建议关闭!'; }else{ echo 'Off 已关闭。'; } ?>
魔术引号 magic_quotes_gpc 出于可移植性、性能等考虑建议关闭。'; }else{ echo 'Off 已关闭。
如果是插入数据库的数据则需要通过程序进行转义(如 addslashes())。
'; } ?>
允许远程调用 allow_url_fopen可以包含、读取远程文件,可能会有些风险。'; }else{ echo 'Off 已关闭。
不可以读取远程文件。
'; } ?>
允许远程被调用 allow_url_include 强烈建议关闭!'; }else{ echo 'Off 已关闭'; } ?>
是否目录限制 open_basedir 可以设置为网站根目录,以提高安全性'; } ?>

服务器性能测试

· 整数运算:让服务器执行50万次加法(1+1),记录其所使用的时间。
· 浮点运算:让服务器执行20万次开方(22),记录其所使用的时间。
· I/O 读写:重复创建、写入、追加和删除文本文件30次,记录其所使用的时间。
建议您多测几次,取平均值,这样会比较接近真实值。
可 供 参 考 的 服 务 器 列 表 整数运算 浮点运算 I/O读写
ITlearner08年配的电脑 (CPU:酷睿2 E4500 2.2G 内存:2G) 65.37 毫秒 129.49 毫秒 51.95 毫秒
ITlearner05年的老服务器 (CPU:P4 3.0G(1M) 内存:1.5G) 82.90 毫秒 152.92 毫秒 62.95 毫秒
瑞豪开源提供的VPS(128M) [2010/01/21] 46.13 毫秒 85.18 毫秒 2.15 毫秒
Godaddy提供虚拟主机(DELUXE PLAN) [2010/01/21] 70.67 毫秒 91.17 毫秒 227.97 毫秒
您正在使用的这台服务器  毫秒 毫秒
0.5){ $runtime = number_format($runtime,2) . ' 秒'; }else{ $runtime = number_format($runtime * 1000,2) . ' 毫秒'; } ?>