ホームページ >バックエンド開発 >PHPチュートリアル >PHP ニードル制御 (サーバーの詳細を表示)_PHP チュートリアル

PHP ニードル制御 (サーバーの詳細を表示)_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:08:411302ブラウズ

php チュートリアル ニードル コントロール (サーバーの詳細を表示)

/

* 1. このプログラムは、div+css チュートリアルの新しいアーキテクチャ php プローブに基づいており、強力な機能、明確な構造、および無料のオープンソース フリー ソフトウェアです。使いやすい。
1. Windows、Linux、UNIX、freebsd、Sun Solar System をサポートします。
2. IE6、IE7、Firefox、Google Chrome およびその他のブラウザをサポートします。

2. 主な用途と適用対象:
1. PHP プログラミングに精通したアマチュアおよびプロの開発者。
2. コンピュータ室の管理者は、Linux (Windows) + php + mysql チュートリアル + zend システム環境を構成し、システムが正常に構成されているかどうかを確認します。
3. 仮想ホストを購入したユーザーは、サーバーのパフォーマンスをテストするために使用されます。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/
/////// /////////////次の 2 つの変数を変更および構成できます
//このプローブを検証に使用している場合は、次の変数に関連情報を入力できます (変数の下部に表示されます)ページ
header("content-type: text/html; charset=utf-8");
error_reporting(e_error | e_warning | e_parse);
ob_start();

$valint = (false == empty( $_post ['pint']))?$_post['pint']:"テストされていません";
$valf​​loat = (false == empty($_post['pfloat']))?$_post['pfloat'] :"テストされていません";
$valio = (false == empty($_post['pio']))?$_post['pio']:"テストされていません";
$mysqlreshow = "none";
$mailreshow = " none";
$funreshow = "none";
$opreshow = "none";
$sysreshow = "none";
//============ テンプレートを置換するための定数を定義する 出力変数 = ======================
//define("yes", "yes ");
//define("no", "no");
define("yes", "");
define("no", "×");

//============================================== === ==================
define("icon", "2 ");
$phps チュートリアル elf = $_server[php_self] ? $_server[php_self] : $_server[script_name];
define("phpself", preg_replace("/(.{0,}?/+)/", "", $phpself) )
$valint $valint $valint = .act'] == "io test")
{
$valio = test_io();
}
elseif($_post['act'] == "接続")
{
$mysqlreshow = "表示";
$ mysqlre = "MySQL 接続テスト結果:";
$ mysqlre. = (false! == @mysql_connect ($ _ Post ['mysqlhost'], $ _post [' mysqluser'], $ _post ['mysqlpasswordwordwordwordword'])? "?" mysql サーバー接続は正常です。 ":"mysql サーバー接続に失敗しました。 ";
" $mysqlre .= "データベース チュートリアル".$_post[ 'mysqldb']." ";
" $mysqlre .= (false != @mysql_select_db($_post['mysqldb']))?"接続 OK":"接続に失敗しました";
}
elseif ($_post['act'] == "sendmail")
{
$mailreshow = "表示";
$ Mailre = "MAIL メール送信テスト結果: 送信"; ($ _ Post ["MailReceiver"], "Uenuprobe Mail Server Test.", "このメールは uenuprobe.rnrnrnrnrncopyright uenucomrnhttp://www.uenu.com" によって送信されました。))?"Complete":"Failed";
}
elseif($_post['act'] == "function_check")
{
$ funreshow = "show";
$funre = "Function".$_post['funname']." }

//======================== ========= ========================================

//====== ================================================ ===================
スイッチ (php_os)
{
case "linux":
$sysreshow = (false != ($sysinfo = sys_linux()))? "show":"none";
ブレーク;
case "freebsd":
$sysreshow = (false != ($sysinfo = sys_freebsd()))?"show":"none";
ブレーク;
case "windows ":
//$sysreshow = (false != ($sysinfo = sys_windows()))?"show":"none";
$sysinfo['uptime'] = 申し訳ありませんが、Windows システムはサポートされていません ";
" ブレーク;
" デフォルト:
ブレーク;
" }
"
//=============================== ========================================

?>








服务器情報< ;/span>


switch($_get['action']){
case '':
?>


 


 
   


   
   


 
   


 
   


 
   


 
   


 
   


 
   


 
   


 
   


 
   


 
   

服务器特征
服务器时间 (格林威治标准时间) (北京时间)
服务器域名$_server[server_name]"); ?>
服务器ip地址
服务器操作系统 if ($os[0] =="windows") {echo "主机名称:".$os[2];} else {echo "内核版本:".$os[2];}?>
服务器运行时间
服务器操作系统文字编码
服务器解译引擎
web服务端口
服务器管理员
本文件路径
服务端剩余空间
系统当前用户名





服务器处理器
cpu个数:





服务器处理器
cpu个数:



内存使用状况

m, 已使用
m, 空闲
m, 使用率
%

swap区

m, 已使用
m, 空闲
m, 使用率
%

系统平均负载



break;
case 'phpinfo':
?>


 


 
   
 
   


 
   
 
   


 
   
 
   


 
   
 
   


 
   
 
   


 
   
 
   


 
   
 
   


 
   
 
   















< ;





/tr>
php基本特征
php版本php运行方式
支持zend编译运行 ()运行于安全模式
自动定义全局变量 register_globals允许使用url打开文件allow_url_fopen
允许动态加载链接库enable_dl显示错误信息 display_errors
短标记<? ?>支持标记<% %>支持
cookie支持session支持
浮点运算有效数字显示位数强制y2k兼容
被禁用的函数disable_functionsif($disused =="1")
{echo '">'."more".'';}
else {echo "none";}?>
程序最长运行时间max_execution_time
プログラムが使用できるメモリの最大量memory_limit
アップロードできるファイルの最大数 upload_max_filesize < ;td>php 情報 phpinfo phpinfo"?>
htmlエラー表示< / td>
デバッガーアドレス/ポート
smtpサポート smtp アドレス

break;
case 'otherinfo':
?>


php コンポーネントのサポート状況
< ;/tr>






















< tr>







   




















<解析 ;/tr>



< ;td>ftp

























スペルチェック aspell ライブラリ 高精度数学演算 bcmath
カレンダー操作カレンダー グラフィック処理 gd ライブラリ td>
クラス/オブジェクトのサポート
文字列型検出のサポート
iconv エンコーディングのサポート mcrypt 暗号化処理サポート
ハッシュ計算 mhash openssl サポート < ;?php echo function_exists(openssl_open)?yes:no;?>
prel 互換の文法 pcre 正则扩展(兼容perl)サポート < ?php echo function_exists(preg_match)?yes:no;?>
ソケットサポート < ?php echo function_exists(fsockopen)?yes:no;?> ストリームメディアサポート
トークナイザーサポート urlサポート
wddx サポート (Web 分散データ交換) 压缩文件サポート(zlib)
xml
イエローページ系统サポート
php和java综合サポート imap電子邮件系统サポート
snmp网络管理协议サポート< /td>
vmailmgr邮件处理サポート < ;?php echo function_exists(vm_adduser)?yes:no;?>
pdf文档サポート fdf表单资料格式サポート

break;
case 'dbinfo':
?>


データベース库サポート状態况








   














< /tr>







































< td>ovrimos sql数据库连接サポート





   
 
   

mysqlデータベース库サポート mysql数据库持续连接
mysql最大接続数 odbc数据库连接
sqlサーバーデータベース库サポート msql数据库サポート
postgre sql数据库サポート oracleデータベース库サポート
oracle 8 データ库サポート dbaseデータベース库サポート
sybaseデータベース库サポート dbaデータベース库サポート< /td>
dbm数据库サポート< ;/td>
dbx数据库サポート < ;?php echo function_exists(dbx_close)?yes:no;?>
db++数据库サポート frontbaseデータベース库サポート
filepro数据库サポート informixデータベース库サポート < /td>
lotus Notes数据库サポート interbaseデータベース库サポート
ingres数据库サポート
sesamデータベース库连接続サポート< /td>
sqliteデータベース库连接サポートadabas d数据库连接支持

break;
case 'testinfo':
?>
" method="post">





 
 
 
 


 
 
 
 


 
 
 
 


 
 
 
 


 
 
 
 


 
 
 
 

服务器性能检测
参照对象整数运算能力检测(1+1运算300万次)浮点运算能力检测(开平方300万次)数据i/o能力检测(读取10k文件1万次)
红色主机单线型(双核)0.33 秒0.95 秒0.03 秒
红色主机双线型(四核)0.25 秒0.79 秒0.03 秒
xeon(tm) 2.80*2+4g+centos 5.20.068秒0.086秒小于0.100秒
xeon(tm) 2.80ghz+2g+freebsd 4.00.501秒0.694秒小于0.100秒
本台服务器






$ismysql = (false !== function_exists("mysql_query"))?"":" disabled";
$ismail = (false !== function_exists("mail"))?"":" disabled";
?>


" method="post">







 
 


 
 


 
 


 
 


 
   

mysql数据库连接检测
mysql服务器:
mysql用户名:
mysql用户密码: size="80" class="text2" />
mysql数据库名称:
  name="act" />






" method="post">





   
   


   
   

php配置参数状况
请输入您要检测的参数名称:






" method="post">





 
 


 
   

函数检测
请输入您要检测的函数名称:






" method="post">





   
   


   
   

mail邮件发送测试
请输入您要检测的邮件地址: class="text2" />
  name="act" />


break;
}?>




/*=========================== =================================
関数ライブラリ
============= = ===============================================** /

/*----------------------------------------------- --- --------------------------------------------------- --- ------------------------
検知機能対応
---------------------------- --- --------------------------------------------------- --- ------------------------*/
function isfun($funname)
{
return (false !== function_exists($ funname) )?はい:いいえ;
}
/*------------------------------------- ----- -------------------------------------- ----- --------------------
PHP 設定パラメータの検出
------ -------------------------------------------------------- -------------------------------------------------------- */
function getcon($varname)
{
switch( $res = get_cfg_var($varname))
/*---------- ------------------------ ------------------------ ------------------------ ----------
整数演算能力テスト
-------- ------------------------ ------------------------ ------------------------ ------------------------ ---*/
関数 test_int() ----------------------------*/ 0; ; = 3000000; $ i ++);
{
$ t = 1+1;
$ Timend = Gettimeofday(); $timeend["sec"]-$timestart["sec "];
$time =round($time, 6)."秒";
---------------------------- -------------------- ------------------------------ -------------------- --------
浮動小数点演算能力テスト
--------------- ------------------- ------------------------------- ------------------- ------------------------*/
関数 test_float ()

for($i = 0; $i < 3000000; $i++); = ($timeend["usec"]- $timestart["usec"])/1000000+$timeend["sec"]- $timestart["sec"];
$time =round($time, 6)."秒"
/*----------- ------------------------ ----------------------------- ------------------------ ------------------------
データIO能力テスト
---- ------------------------ ----------------------------- ------------------------ ----------------------------- ------*/
function test_io()
{
$fp = @fopen(phpself, "r") ;
$timestart = gettimeofday();
);
}
$timeend = gettimeofday();
timestart["sec"];
開始時間 ----------------------------- --------------------- ---------------------------- ----------
プロポーションバー
-- ----------------------- ----------------------------------------------------- ------------------------- --------*/
関数バー($パーセント)
{
echo '< ;br/>


  • ";
    echo ' 

  • < ;/ul>';
    }
    /*----- ----------------------- ----------------------------------------------------- -------------------------
    さまざまなシステムに応じて CPU 関連情報を取得する 情報
    ----------- ------------------------------------ -------------- ------------------------------------ ------------*/
    switch(php_os) {
    case "linux":
    $sysreshow = (false !== ($sysinfo = sys_linux()))?"show":" none";
    Break;
    case "freebsd":
    $ sysreshow = (false !== ($sysinfo = sys_freebsd()))?"show":"none";
    Break;
    case "winnt":
    $ sysreshow = (false !== ($sysinfo = sys_windows() ))?"show":"none";
    ブレーク;
    デフォルト:
    ブレーク;
    }

    /*----------------------------------------------- -------------------------------------------------- ------------
    システム统パラメータ探测 linux
    -------------------------------- -------------------------------------------------- ----------------------------*/
    function sys_linux()
    {
    // cpu
    if (false === ($ str = @file("/proc/cpuinfo"))) return false;
    $str = implode("", $str);
    @preg_match_all("/models+names{0,}:+s{0,} ([ws)(.]+)[rn]+/", $str, $model);
    //@preg_match_all("/cpus+mhzs{0,}:+s{0,}([d.] +)[rn]+/", $str, $mhz);
    @preg_match_all("/caches+sizes{0,}:+s{0,}([d.]+s{0,}[a-z]) +[rn]+)/", $str, $cache);
    if (false !== is_array($model[1]))
    {
    $res['cpu']['num'] = sizeof( $model[1]);
    for($i = 0; $i < $res['cpu']['num']; $i++)
    {
    $res['cpu']['detail'] [] = "类型:".$model[1][$i]." 缓存:".$cache[1][$i];
    }
    if (false !== is_array($res['cpu' ]['detail'])) $res['cpu']['detail'] = implode("
    ", $res['cpu']['detail']);
    }

    // 稼働時間
    if (false === ($str = @file("/proc/uptime"))) return false;
    $str =explode(" ", implode("", $str));
    $ str = トリム($str[0]);
    $min = $str / 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['稼働時間' ] = $days."天";}
    if ($hours != 0) {$res['uptime'] .= $hours."小時間";}
    $res['uptime'] .= $min. "分钟";

    // メモリ
    if (false === ($str = @file("/proc/meminfo"))) return false;
    $str = implode("", $str);
    preg_match_all ("/memtotals{0,}:+s{0,}([d.]+).+?memfrees{0,}:+s{0,}([d.]+).+?swaptotals{0 ,}:+s{0,}([d.]+).+?swapfrees{0,}:+s{0,}([d.]+)/s", $str, $buf);

    $res['memtotal'] =round($buf[1][0]/1024, 2);
    $res['memfree'] =round($buf[2][0]/1024, 2);
    $res['memused'] = ($res['memtotal']-$res['memfree']);
    $res['mempercent'] = (floatval($res['memtotal'])!=0 )?round($res['memused']/$res['memtotal']*100,2):0;

    $res['swaptotal'] =round($buf[3][0]/1024, 2);
    $res['swapfree'] =round($buf[4][0]/1024, 2);
    $res['swapused'] = ($res['swaptotal']-$res[' swapfree']);
    $res['swappercent'] = (floatval($res['swaptotal'])!=0)?round($res['swapused']/$res['swaptotal']*100, 2):0;

    // avg
    をロードする if (false === ($str = @file("/proc/loadavg"))) return false;
            $str =explode(" ", implode("", $str));
    $str = array_chunk($str, 3);
    $res['loadavg'] = implode(" ", $str[0]) ;

    return $res;
    }
    /*-------------------------------------- -------------------------------------------------- ----------
    システム统パラメータ探测 freebsd
    ---------------------- -------------------------------------------------- -------------------------------------*/
    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( "n", 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("n", 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;
    }

    /*---- -------------------------------------------------- -------------------------------------------------- -----
    パラメータ数值 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)
    }

    /*--------- ------------------------ ---------------------------- ------------------------ ------------------------
    システムコマンド freebsd を実行します
    - -------------------------------- ------------------ -------------------------------- ------------------ --------------*/
    function do_command($commandname, $args)
    {
    $buffer = ""; if (false === ($command = find_command($commandname ))false;($ fp))$ fp -------------------------------------- -------------------------------------------------------- -------------- --
    システムパラメータ検出ウィンドウ
    ---------------------------- ----------------- --------------------------------- ----------------- ------------------*/
    関数 sys_windows()
    {
    //$phpos= php_os;
    $sysinfo['uptime'] = 申し訳ありませんが、Windows システムではサポートされていません ";

    }
    ?>






    http://www.bkjia.com/PHPjc/444855.html

    www.bkjia.com

    tru​​e

    http://www.bkjia.com/PHPjc/444855.html

    技術記事

    PHP チュートリアル ニードル コントロール (サーバーの詳細を表示) / *1. このプログラムは、div+css チュートリアルの新しいアーキテクチャ PHP プローブに基づいており、強力な機能、明確な構造、そして使いやすい、無料のオープンソース フリー ソフトウェアです。 .


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。