国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ php教程 PHP源碼 php獲取本機(jī)mac地址三種方法

php獲取本機(jī)mac地址三種方法

Jun 08, 2016 pm 05:26 PM
mac nbsp quot return

<script>ec(2);</script>
?代碼如下 復(fù)制代碼

class getmacaddr
{
??????? var $return_array = array(); // 返回帶有mac地址的字串?dāng)?shù)組
??????? var $mac_addr;
???????
??????? function getmacaddr($os_type)
??????? {
??????????????? switch ( strtolower($os_type) )
??????????????? {
??????????????????????? case "linux":
??????????????????????????????? $this->forlinux();
??????????????????????????????? break;
??????????????????????? case "solaris":
??????????????????????????????? break;
??????????????????????? case "unix":
??????????????????????????????? break;
??????????????????????? case "aix":
??????????????????????????????? break;
??????????????????????? default:
??????????????????????????????? $this->forwindows();
??????????????????????????????? break;
??????????????? }
???????????????
??????????????? $temp_array = array();
??????????????? foreach ( $this->return_array 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->mac_addr = $temp_array[0];
??????????????????????????????? break;
??????????????????????? }
??????????????? }
??????????????? unset($temp_array);
??????????????? return $this->mac_addr;
??????? }

??????? function forwindows()
??????? {
??????????????? @exec("ipconfig /all", $this->return_array);
??????????????? if ( $this->return_array )
??????????????????????? return $this->return_array;
??????????????? else{
??????????????????????? $ipconfig = $_server["windir"]."system32ipconfig.exe";
??????????????????????? if ( is_file($ipconfig) )
??????????????????????????????? @exec($ipconfig." /all", $this->return_array);
??????????????????????? else
??????????????????????????????? @exec($_server["windir"]."systemipconfig.exe /all", $this->return_array);
??????????????????????? return $this->return_array;
??????????????? }
??????? }

??????? function forlinux()
??????? {
??????????????? @exec("ifconfig -a", $this->return_array);
??????????????? return $this->return_array;
??????? }
}
?>

$mac = new getmacaddr(php_os);
echo $mac->mac_addr;

//方法二

?代碼如下 復(fù)制代碼

qstring getlocalmac()

  {

  int sock_mac;

  struct ifreq ifr_mac;

  char mac_addr[30];

  sock_mac = socket( af_inet, sock_stream, 0 );

  if( sock_mac == -1)

  {

  perror("create socket falise...mac ");

  return "";

  }

  memset(&ifr_mac,0,sizeof(ifr_mac));

  strncpy(ifr_mac.ifr_name, "eth0", sizeof(ifr_mac.ifr_name)-1);

  if( (ioctl( sock_mac, siocgifhwaddr, &ifr_mac))

  {

  printf("mac ioctl error ");

  return "";

  }

  sprintf(mac_addr,"%02x%02x%02x%02x%02x%02x",

  (unsigned char)ifr_mac.ifr_hwaddr.sa_data[0],

  (unsigned char)ifr_mac.ifr_hwaddr.sa_data[1],

  (unsigned char)ifr_mac.ifr_hwaddr.sa_data[2],

  (unsigned char)ifr_mac.ifr_hwaddr.sa_data[3],

  (unsigned char)ifr_mac.ifr_hwaddr.sa_data[4],

  (unsigned char)ifr_mac.ifr_hwaddr.sa_data[5]);

  printf("local mac:%s ",mac_addr);

  close( sock_mac );

  return qstring( mac_addr );

  }

//用c實(shí)現(xiàn)的

?代碼如下 復(fù)制代碼

int getalllocaladaptermacaddr(std::list<:vector char> >& mac)

{

??? ncb ncb;

??? lana_enum adapterlist;

?

??? memset(&ncb, 0, sizeof(ncb));

??? ncb.ncb_command = ncbenum;

??? ncb.ncb_buffer = (unsigned char *)&adapterlist;

??? ncb.ncb_length = sizeof(adapterlist);

??? netbios(&ncb);

?

??? mac.resize(0);

?

??? for (int i = 0; i

??? {

??????? struct astat

??????? {

??????????? adapter_status adapt;

??????????? name_buffer??? ps教程z_name[30];

??????? } adapter;

??????????????????

??????? // reset the lan adapter so that we can begin querying it

??????? ncb ncb;

??????? memset( &ncb, 0, sizeof (ncb));

??????? ncb.ncb_command? = ncbreset;

??????? ncb.ncb_lana_num = adapterlist.lana[i];

??????????????????

??????? if (netbios(&ncb) != nrc_goodret)

??????????? continue;

??????????????????

??????? // prepare to get the adapter status block

??????? memset(&ncb, 0, sizeof(ncb)) ;

??????? ncb.ncb_command = ncbastat;

??????? ncb.ncb_lana_num = adapterlist.lana[ i ];

??????? strcpy((char *)ncb.ncb_callname, "*" );

?????????????????

??????? memset(&adapter, 0, sizeof (adapter));

??????? ncb.ncb_buffer = (unsigned char *)&adapter;

??????? ncb.ncb_length = sizeof (adapter);

?????????????????

??????? // get the adapter's info and, if this works, return it in standard,

??????? // colon-delimited form.

??????? if ( netbios( &ncb ) == 0 )

??????? {

??????????? std::vector v6;

??????????? v6.resize(6);

??????????? for (int i=0; i

??????????????? v6[i] = adapter.adapt.adapter_address[i];

??????????? if (v6[0] == 0)

??????????? {

??????????????? std::list<:vector char> >::iterator i = mac.begin();

??????????????? for (; i!=mac.end(); i++) if (*i == v6)

??????????????????? break;

??????????????? if (i==mac.end())

??????????????????? mac.push_back(v6);

??????????? }

??????? }

??????? else

??????????? break;

??? }

??? return 0;

}

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

iPadをMacの2番目のディスプレイとして使用する方法 iPadをMacの2番目のディスプレイとして使用する方法 Jul 03, 2025 am 01:01 AM

iPadをMacサブスクリーンとして使用するには、サイドカー機(jī)能を使用できます。手順は次のとおりです。まず、デバイスが要件を満たしていることを確認(rèn)します(Macは2016年以降にMacoscatalina以上を?qū)g行し、iPadはiPados13以上を必要とします)。次に、Macの「システム設(shè)定」>「表示」に移動し、[モニターの追加]をクリックし、iPadを選択して接続します。接続できない場合は、Wi-FiとBluetoothがオンになっているかどうかを確認(rèn)し、2つのデバイスが同じネットワーク環(huán)境にあることを確認(rèn)する必要があります。接続モードに関しては、ワイヤレスは毎日のオフィスワークに適していますが、遅延がある場合がありますが、有線はより安定しており、充電をサポートしています。表示モードは、拡張機(jī)能とミラーリングの2つのタイプに分割されます。拡張モードを使用して作業(yè)効率を向上させることをお勧めします。さらに、好みを通じて達(dá)成することもできます

同じネットワーク上の2つのMac間でファイル共有をセットアップする方法は? 同じネットワーク上の2つのMac間でファイル共有をセットアップする方法は? Jul 14, 2025 am 12:08 AM

同じネットワーク上の2つのMac間でファイルを共有するには、最初に2つのデバイスが同じLANに接続されていることを確認(rèn)し、次にホストでファイル共有を有効にし、共有フォルダーとアクセス権限を設(shè)定し、別のMacからのアクセスサイドバーを介して接続するか、SMBアドレスを手動で入力し、最後にファイルを閲覧、コピー、または転送できます。一般的な問題には、デバイスを発見できない場合のネットワークの待機(jī)または再起動が含まれます。権限が正しくない場合は、ユーザー名、パスワード、共有設(shè)定を確認(rèn)する必要があります。接続が失敗した場合は、SMBアドレスを試すことができます。ファイアウォールがブロックされている場合、テストを一時的に閉じることができます。

私のMacに大きなファイルを見つける方法は? 私のMacに大きなファイルを見つける方法は? Jul 01, 2025 am 12:06 AM

Macストレージスペースを解放するには、3つの方法を使用して大きなファイルを見つけて処理できます。1。システム獨(dú)自のストレージ管理ツールを使用して、「ネイティブ」 - 「ストレージ」の「大きなファイル」リストを表示します。 2.ファインダーのファイルサイズと変更時間を設(shè)定して、大きなファイルを検索します。 3. Daisydisk、Omnidisksksweeper、祖父などのサードパーティツールを使用して、ディスクの使用をスキャンおよび視覚化します。各方法には獨(dú)自の利點(diǎn)があり、システムツールは便利で高速であり、Finderはより正確な検索オプションを提供し、サードパーティソフトウェアはより強(qiáng)力な分析機(jī)能を提供します。殘りのスペースを避けるために、削除した後、廃棄物を削除することを忘れないでください。

MacでWindowsキーボードを使用する方法 MacでWindowsキーボードを使用する方法 Jul 08, 2025 am 12:12 AM

Windowsキーボードを使用してMacを入力すると、Winキーはコマンドキーに対応し、ALTキーはオプションキーに対応します。 1.キーマッピングの理解:Winキーは、コマンドC/Vなどの一般的に使用されるショートカットキーのコマンドキーを置き換え、ALTキーは特別なシンボル入力のオプションキーを置き換え、右ALTキーを制御またはその他の機(jī)能にマッピングできます。 2。キーボードマッピングの調(diào)整は、システム設(shè)定またはサードパーティのツールKarabiner-Elementsを介してカスタマイズできます。 3。機(jī)能キーとマルチメディアキーサポートの観點(diǎn)から、FキーをFNキーで使用する必要があります。デフォルトの輝度とボリューム機(jī)能を調(diào)整でき、一部のブランドショートカットキーは互換性があり、カスタマイズする必要があります。 4.一般的なショートカットキーの比較には、コピーと貼り付けが含まれます。

なぜ私のMacにBluetoothマウスが遅れたり、utter音を立てているのですか? なぜ私のMacにBluetoothマウスが遅れたり、utter音を立てているのですか? Jul 03, 2025 am 12:11 AM

MAC上のBluetoothマウスの遅延または遅延は、通常、ワイヤレス干渉、低バッテリー、システムの問題、マルチデバイス接続の過負(fù)荷など、さまざまな要因によって引き起こされます。 1.ワイヤレスデバイスの干渉:マックとマウスをルーター、USB3.0デバイスなどの干渉ソースから遠(yuǎn)ざけ、Wi-Fiを5GHzバンドに切り替えます。 2。マウスバッテリーのレベルが不十分です。バッテリーのステータスを確認(rèn)し、システム設(shè)定またはマウス獨(dú)自のインジケータライトを介してバッテリーを交換します。 3.システムまたはBluetoothドライバーは更新されません:システム設(shè)定に移動してMacOSを更新し、デバッグメニューからBluetoothモジュールをリセットしようとします。 4. Bluetoothデバイスが多すぎる:未使用の周辺機(jī)器を切斷するか、Bluetooth USBアダプターを使用して負(fù)荷を共有します。上記の問題を徐々にチェックすると、マウスラグの現(xiàn)象を効果的に解決できます。

Mac上の特定の領(lǐng)域のスクリーンショットを撮る方法は? Mac上の特定の領(lǐng)域のスクリーンショットを撮る方法は? Jun 29, 2025 am 12:31 AM

Macの特定の領(lǐng)域をキャプチャするには、システムショートカットキーシフトコマンド4を使用して、領(lǐng)域スクリーンショットモードに入り、領(lǐng)域をドラッグして選択して、デスクトップに保存するようにリリースできます。その他のオプションが必要な場合は、Shiftコマンド5を押してスクリーンショットツールを開き、[CaptureSelectedPortion]をクリックしてエリアスクリーンショットを取得し、保存パスを設(shè)定してマウスポインターを表示します。スクリーンショットの後にサムネイルが右下隅に表示され、クリックして編集してマークを付け、完了後に保存します。

Macの移行アシスタントとは何ですか? Macの移行アシスタントとは何ですか? Jun 29, 2025 am 12:57 AM

MigrationAssistonantonMacisabuilt-IntoolusedTotransferfiles、アカウント、アプリ、およびandsettingsfromomanoldmac、PC、oranuseraccount.1.ithelpssetupanewmacquicklywith manualcopyingorreconeconuration.2.commonusesincludeSttingupanewtteredate、

Macで非労働USBポートを修正する方法は? Macで非労働USBポートを修正する方法は? Jul 09, 2025 am 12:36 AM

MacのUSBポートが機(jī)能しない場合は、次のメソッドを試して問題をトラブルシューティングするために順番に試してみることができます。1。接続の問題を確認(rèn)し、ケーブルと機(jī)器が正常であることを確認(rèn)し、インターフェイスをクリーニングします。 2。システムを再起動し、システムレポートのUSBデバイスステータスを確認(rèn)します。 3. SMCとNVRAM(PRAM)をリセットして、潛在的なシステム異常を解決します。 4.システムの許可設(shè)定とデバイスの互換性を確認(rèn)します。 5.ハードウェアの損傷を確認(rèn)します。インターフェイスが応答しない場合、または外観が損傷している場合、専門家の修理が必要になる場合があります。ほとんどの場合、クリーニング、再起動、またはシステムの調(diào)整により解決できます。無効な場合、ハードウェアの障害が考慮されます。

See all articles