
在linux你执行dmidecode就可以查看你机器的硬件配置信息了。
帮你找了一个这样的东东,不知道对你有没有帮助:PHP调用COM获得服务器硬件信息
function sys_windows() {
$objLocator = new COM("WbemScriptingSWbemLocator");
$wmi = $objLocator->ConnectServer();
$prop = $wmi->get("Win32_PnPEntity");
//CPU
$cpuinfo = GetWMI($wmi,"Win32_Processor", array("Name","L2CacheSize","NumberOfCores"));
$res['CPU个数'] = $cpuinfo[0]['NumberOfCores'];
if (null == $res['CPU个数']) {
$res['CPU个数'] = 1;
}
for ($i=0;$i<$res['cpu']['num'];$i++){
$res['CPU型号'] = $cpuinfo[0]['Name']"<br>";
$res['二级缓存'] = $cpuinfo[0]['L2CacheSize']"<br>";
}
// SYSINFO
$sysinfo = GetWMI($wmi,"Win32_OperatingSystem", array('LastBootUpTime','TotalVisibleMemorySize','FreePhysicalMemory','Caption','CSDVersion','SerialNumber','InstallDate'));
$res[' *** 作系统版本'] = $sysinfo[0]['Caption']" "$sysinfo[0]['CSDVersion'];
$res[' *** 作系统序列号'] = "{$sysinfo[0]['SerialNumber']} 于"date('Y年m月d日H:i:s',strtotime(substr($sysinfo[0]['InstallDate'],0,14)))"安装";
//UPTIME
$res['最后重启时间'] = $sysinfo[0]['LastBootUpTime'];
$sys_ticks = 36008 + time() - strtotime(substr($res['最后重启时间'],0,14));
$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) $ress['day'] = $days"天";
if ($hours !== 0) $ress['hours'] = $hours"小时";
$res['最后重启时间'] = $ress['day']$ress['hours']$min"分钟";
//MEMORY
$res['物理内存'] = $sysinfo[0]['TotalVisibleMemorySize'];
$res['剩余内存'] = $sysinfo[0]['FreePhysicalMemory'];
$res['已使用内存'] = $res['物理内存'] - $res['剩余内存'];
$res['使用率'] = round($res['已使用内存'] / $res['物理内存']100,2);
$swapinfo = GetWMI($wmi,"Win32_PageFileUsage", array('AllocatedBaseSize','CurrentUsage'));
// TODO swp区获取
$res['交换分区'] = $swapinfo[0][AllocatedBaseSize];
$res['已经使用'] = $swapinfo[0][CurrentUsage];
$res['剩余内存'] = $res['swapTotal'] - $res['swapUsed'];
$res['使用率'] = (floatval($res['swapTotal'])!=0)round($res['swapUsed']/$res['swapTotal']100,2):0;
// LoadPercentage
$loadinfo = GetWMI($wmi,"Win32_Processor", array("LoadPercentage"));
$res['系统平均负载'] = $loadinfo[0]['LoadPercentage'];
return $res;
}
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;
}
比如有一个网址为
>
我想得到这个id值
可以用正则,也可以用php函数解析到数组中
用正则可以这样
preg_match('/id=(\d+)/',$_SERVER["REQUEST_URI"],$m);//$_SERVER 这个表示当前网址url
print_r($m[1]);exit;
或者用parse_url()及parse_str()函数
$cur_q=parse_url($_SERVER["REQUEST_URI"],PHP_URL_QUERY);
parse_str($cur_q,$myArray);
print_r($myArray["id"]);exit;
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
PHP的特性包括:
1 PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。
2 PHP可以比CGI或者Perl更快速的执行动态网页——动态页面方面,与其他的编程语言相比,
PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;
PHP具有非常强大的功能,所有的CGI的功能PHP都能实现。
3 PHP支持几乎所有流行的数据库以及 *** 作系统。
4 最重要的是PHP可以用C、C++进行程序的扩展!
参考资料:百度百科 PHP
$ip_addr = "19216808";
$subnet_mask = "2552552550";
$ip = ip2long($ip_addr);
$nm = ip2long($subnet_mask);
$nw = ($ip & $nm);
$bc = $nw | (~$nm);
echo "IP Address: " long2ip($ip) "<hr>";
echo "Subnet Mask: " long2ip($nm) "<hr>";
echo "Network Address: " long2ip($nw) "<hr>";
echo "Broadcast Address: " long2ip($bc) "<hr>";
echo "Number of Hosts: " ($bc - $nw - 1) "<hr>";
echo "Host Range: " long2ip($nw + 1) " -> " long2ip($bc - 1) "<hr>";
以上就是关于在linux下使用php获取PC硬件可否全部的内容,包括:在linux下使用php获取PC硬件可否、php如何获取网址中的参数、PHP能获取服务器的子网掩码和网关吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)