ホームページ  >  記事  >  バックエンド開発  >  PHP はサーバー Mac とクライアント Mac のアドレスを取得し、WIN/LINUX_PHP チュートリアルをサポートします

PHP はサーバー Mac とクライアント Mac のアドレスを取得し、WIN/LINUX_PHP チュートリアルをサポートします

WBOY
WBOYオリジナル
2016-07-13 10:29:381117ブラウズ

サーバー Mac を取得します

コードをコピーします コードは次のとおりです:

/**
ネットワーク カードの元の MAC アドレスを取得します。現在 WIN/LINUX システムをサポートしています
マシンのネットワーク カードの物理 (MAC) アドレスを取得します
**/
class GetmacAddr{
var $result = array(); // MAC アドレスを返します 文字列配列
var $macAddr;
/*Construction*/
function __construct($osType){
switch (strto lower($osType) ){
case "unix": Break
case "solaris": Break; ;
ケース "aix": ブレーク;
$this->for_linux_os();
デフォルト: {
$this->for_windows_os();
$ temp_array = array();
foreach($this->result as $value){
if(preg_match("/[0-9a-f][0-9a-f][:-]"." [0 -9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][ 0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f]/i ", $value,
$temp_array ) ){
$this->macAddr = $temp_array[0];
break;
}
}
unset($temp_array);
return $this->macAddr;
}
/ *Linux システムでのメソッドの取得*/
function for_linux_os(){
@exec("ifconfig -a", $this->result);
return $this->result;
/*in winシステム取得メソッド*/
function for_windows_os(){
@exec("ipconfig /all", $this->result) {
return $this->result; } else {
$ipconfig = $_SERVER["WINDIR"]."system32ipconfig.exe";
if(is_file($ipconfig)) {
@exec($ipconfig." /all", $this->result) ;
} else {
@exec($_SERVER["WINDIR"]."systemipconfig.exe /all", $this->result);
return $this->result;
?>


クライアントの MAC アドレスを取得します:



コードをコピーします

コードは次のとおりです:


@exec("arp -a",$array) // arp を実行します。コマンドを実行し、結果を配列 $array に入れます
foreach($array as $value){
//一致した結果を配列 $mac_array に入れます
if(strpos($value,$_SERVER["REMOTE_ADDR"]) && preg_match ("/(:?[0 -9A-F]{2}[:-]){5}[0-9A-F]{2}/i",$value,$mac_array)){
$mac = $mac_array[0]; break ; } } echo $mac;

注: クライアントによって取得された mac は、このマシンではテストできず、別のコンピューターからアクセスすることによってのみ出力できます。



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

www.bkjia.com

本当
http://www.bkjia.com/PHPjc/770587.html
技術記事

次のようにサーバー Mac コピー コードを取得します: ?php /**ネットワーク カードの元の MAC アドレスを取得します。現在、WIN/LINUX システムをサポートしています。マシンのネットワーク カードの物理 (MAC) アドレスを取得します。*/ class GetmacAddr{...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。