php獲取本機(jī)真實(shí)IP地址實(shí)例代碼
更新時(shí)間:2016年03月31日 15:25:43 作者:走向愛(ài)
這篇文章主要為大家詳細(xì)介紹了php獲取本機(jī)真實(shí)IP地址實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文實(shí)例為大家分享了php獲取本機(jī)真實(shí)IP地址實(shí)例代碼,供大家參考。
主要是獲取操作系統(tǒng)為win2000/xp、win7的本機(jī)IP真實(shí)地址,和獲取操作系統(tǒng)為linux類型的本機(jī)IP真實(shí)地址,具體內(nèi)容如下
function getLocalIP() {
$preg = "/\A((([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))\.){3}(([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))\Z/";
//獲取操作系統(tǒng)為win2000/xp、win7的本機(jī)IP真實(shí)地址
exec("ipconfig", $out, $stats);
if (!empty($out)) {
foreach ($out AS $row) {
if (strstr($row, "IP") && strstr($row, ":") && !strstr($row, "IPv6")) {
$tmpIp = explode(":", $row);
if (preg_match($preg, trim($tmpIp[1]))) {
return trim($tmpIp[1]);
}
}
}
}
//獲取操作系統(tǒng)為linux類型的本機(jī)IP真實(shí)地址
exec("ifconfig", $out, $stats);
if (!empty($out)) {
if (isset($out[1]) && strstr($out[1], 'addr:')) {
$tmpArray = explode(":", $out[1]);
$tmpIp = explode(" ", $tmpArray[1]);
if (preg_match($preg, trim($tmpIp[0]))) {
return trim($tmpIp[0]);
}
}
}
return '127.0.0.1';
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。
您可能感興趣的文章:
- PHP獲取用戶訪問(wèn)IP地址的5種方法
- php驗(yàn)證郵箱和ip地址最簡(jiǎn)單方法匯總
- PHP 獲取客戶端真實(shí)IP地址多種方法小結(jié)
- PHP準(zhǔn)確取得服務(wù)器IP地址的方法
- PHP中根據(jù)IP地址判斷城市實(shí)現(xiàn)城市切換或跳轉(zhuǎn)代碼
- php獲得用戶ip地址的比較不錯(cuò)的方法
- php實(shí)現(xiàn)獲取局域網(wǎng)所有用戶的電腦IP和主機(jī)名、及mac地址完整實(shí)例
- php實(shí)現(xiàn)根據(jù)IP地址獲取其所在省市的方法
- php中獲取主機(jī)名、協(xié)議及IP地址的方法
- php判斷IP地址是否在多個(gè)IP段內(nèi)
相關(guān)文章
PHP對(duì)象相關(guān)知識(shí)總結(jié)
這篇文章主要介紹了PHP對(duì)象相關(guān)知識(shí)總結(jié)的相關(guān)資料,需要的朋友可以參考下2017-04-04
php+mysql事務(wù)rollback&commit示例
執(zhí)行BEGIN之后,其作用同set autocommit=0,而且之后設(shè)置set autocommit=0或1時(shí)無(wú)效。所以,為使操作清楚,一般不使用BEGIN。2010-02-02
php中使用接口實(shí)現(xiàn)工廠設(shè)計(jì)模式的代碼
php實(shí)現(xiàn)工廠設(shè)計(jì)模式,使用接口實(shí)現(xiàn),表面上接口沒(méi)有什么用,因?yàn)閜hp是類型自動(dòng)轉(zhuǎn)換的。實(shí)現(xiàn)上使用接口可以約束類的定義,從而實(shí)現(xiàn)一致的訪問(wèn)2012-06-06

