广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php修改hosts的方法
  • 422
分享到

php修改hosts的方法

2023-06-08 00:06:09 422人浏览 八月长安
摘要

这篇文章将为大家详细讲解有关PHP修改hosts的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php修改hosts的方法:首先删除配置文件里域的hosts,将域配置为指定ip;然后添加一条host记

这篇文章将为大家详细讲解有关PHP修改hosts的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

php修改hosts的方法:首先删除配置文件里域的hosts,将域配置为指定ip;然后添加一条host记录;最后写入host文件,代码为【public function write()】。

php修改hosts的方法:

有这样一个需求,我有多个网址希望在不同的时候对应不同的 ip,如果一个个配 hosts,这工作显得有些繁琐。写了如下脚本来批量更改。

<?phpdefine('HOST_FILE', 'C:\windows\System32\drivers\etc\hosts');$hm = new HostManage(HOST_FILE);$env = $argv[1];if (empty($env)) {    $hm->delAllGroup();} else {    $hm->addGroup($env);}class HostManage {    // hosts 文件路径    protected $file;    // hosts 记录数组    protected $hosts = array();    // 配置文件路径,默认为 __FILE__ . '.ini';    protected $configFile;    // 从 ini 配置文件读取出来的配置数组    protected $config = array();    // 配置文件里面需要配置的域名    protected $domain = array();    // 配置文件获取的 ip 数据    protected $ip = array();    public function __construct($file, $config_file = null) {        $this->file = $file;        if ($config_file) {          $this->configFile = $config_file;        } else {          $this->configFile = __FILE__ . '.ini';        }        $this->initHosts()            ->initCfg();    }    public function __destruct() {        $this->write();    }    public function initHosts() {        $lines = file($this->file);        foreach ($lines as $line) {            $line = trim($line);            if (empty($line) || $line[0] == '#') {                continue;            }            $item = preg_split('/\s+/', $line);            $this->hosts[$item[1]] = $item[0];        }        return $this;    }    public function initCfg() {        if (! file_exists($this->configFile)) {            $this->config = array();        } else {            $this->config = (parse_ini_file($this->configFile, true));        }        $this->domain = array_keys($this->config['domain']);        $this->ip = $this->config['ip'];        return $this;    }        public function delAllGroup() {        foreach ($this->domain as $domain) {            $this->delRecord($domain);        }    }        public function addGroup($env) {        if (! isset($this->ip[$env])) {            return $this;        }        foreach ($this->domain as $domain) {            $this->addRecord($domain, $this->ip[$env]);        }        return $this;    }        function addRecord($domain, $ip) {        $this->hosts[$domain] = $ip;        return $this;    }        function delRecord($domain) {        unset($this->hosts[$domain]);        return $this;    }        public function write() {        $str = '';        foreach ($this->hosts as $domain => $ip) {            $str .= $ip . "\t" . $domain . PHP_EOL;        }        file_put_contents($this->file, $str);        return $this;    }}

示例配置文件如下:

# 域名[domain]a.example.com=1 # 请无视这个 =1,因为使用了 parse_ini_file 这个函数来解析,如果后面不带值,就获取不到这条记录了b.example.com=1c.example.com=1# ip 记录[ip]local=127.0.0.1dev=192.168.1.100

使用方法:

php hosts.php local # 域名将指向本机 127.0.0.1php hosts.php dev # 域名将指向开发机 192.168.1.100php hosts.php # 删除域名的 hosts 配置

关于“php修改hosts的方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: php修改hosts的方法

本文链接: https://www.lsjlt.com/news/250617.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php修改hosts的方法
    这篇文章将为大家详细讲解有关php修改hosts的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php修改hosts的方法:首先删除配置文件里域的hosts,将域配置为指定ip;然后添加一条host记...
    99+
    2023-06-08
  • 修改hosts文件的方法
    这篇文章主要介绍了修改hosts文件的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。修改hosts文件的方法:首先按【windows+x】,打开【windows powe...
    99+
    2023-06-14
  • Win8 hosts文件修改的方法
    1、首先我们在计算机里打开 C:\Windows\System32\Drivers\etc 文件夹,找到hosts 2、缩小窗口,拖拽hosts文件到桌面,遇到提示点击“继续”(不要关闭etc文...
    99+
    2023-06-03
    win8 hosts文件修改 hosts 修改 hosts修改不了 文件 Win8 方法
  • win2008 r2 hosts文件修改方法
    win2008 r2就是64位的系统 hosts文件路径的是C:\Windows\System32\drivers\etc\hosts 方法一 第一种方法是网上流传很广的覆盖方法.就是先复制hosts文件到别的地方,修改...
    99+
    2023-06-10
    win2008 hosts 修改 文件 r2 方法
  • Win8.1系统如何修改Hosts文件?Win8.1系统修改Hosts文件的方法
      Win8.1系统如何修改Hosts文件?有些用户也许不知道,当你修改Hosts文件后,Win8.1访问某些网站的速度会变快。你可以把你经常访问的网站添加到Hosts文件,以提高访问速度。那么Win8.1...
    99+
    2022-06-04
    文件 系统 方法
  • hosts文件的介绍以及修改hosts文件的方法
    本篇内容介绍了“hosts文件的介绍以及修改hosts文件的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!(1)什么是Hosts文件? ...
    99+
    2023-06-14
  • Mac 修改Hosts文件的两种方法
    一 修改终端命令 打开终端,输入命令行: sudo vi /etc/hosts 输入本机密码后,会自动打开hosts文件 。 键盘输入i(插入),修改完成后,按 esc 键退出插入页面 保存退出:按住shift+:键,输入wq,再enter...
    99+
    2023-08-17
    linux 服务器 网络
  • Mac 修改Hosts文件的方式
    每次都要查询怎么改Hosts文件,还是记录下来吧!!!! 1、修改终端命令 (1)打开终端,输入命令行: sudo vi /etc/hosts (2)输入本机密码后,会自动打开hosts文件 。 键盘输入i(插入),修改完成后,按 esc ...
    99+
    2023-09-01
    经验分享
  • hosts文件修复问题_360误删误改hosts文件的恢复方法
    hosts文件的作用相信大家都比较清楚了,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应...
    99+
    2023-06-08
    hosts 360 文件 恢复 问题 方法
  • Linux系统hosts文件修改方法是什么
    这期内容当中小编将会给大家带来有关Linux系统hosts文件修改方法是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。对于要经常访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系,那么在L...
    99+
    2023-06-28
  • win8系统hosts文件突破权限修改方法
    在Win8系统中直接修改hosts文件的时候 会提示:你没有权限在此位置中保存文件。 请与管理员联系以获得相应权限。其实用一个小小的方法就可以修改windows8的hosts文件,修改方法如下打开host...
    99+
    2022-06-04
    权限 文件 方法
  • Win10修改编辑hosts文件后无法保存的解决方法
    Hosts文件是没有扩展名的系统文件,修改它能屏蔽网站广告、加快域名解析等。有用户修改Win10系统的hosts文件后发现无法保存,这其实是由于Win10系统默认了没有权限去编辑保存系统里面的文件,这就是导致修改编辑的h...
    99+
    2023-05-19
    Win10 hosts hosts文件无法保存 编辑hosts文件
  • 在Win8系统中修改hosts文件无法保存的解决方法
      Windows8发布了,相信不少人已经拿来尝鲜了。笔者也把家中的电脑也安装了Windows8,从家中网络访问公司后台的时后,需要修改hosts,但发现无法保存。可能一些尝鲜的用户在需要在家完成「残I」的...
    99+
    2022-06-04
    解决方法 文件 系统
  • 怎么修改win7的hosts文件
    本篇内容介绍了“怎么修改win7的hosts文件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!修改hosts文件前要将hosts文件先备份一...
    99+
    2023-07-01
  • win10修改hosts无法保存如何解决
    如果你在Windows 10上修改hosts文件时遇到无法保存的问题,可能是因为文件的访问权限限制。以下是一些解决方案:1. 使用管...
    99+
    2023-09-20
    win10
  • win7修改hosts和service文件提示无权限的解决方法
    win7的用户权限管理比较严格,默认情况下你是无法直接修改hosts和service这样的文件,提示无权限。网上有很多教程,讲解如何获取管理员或文件权限,如果你只是想修改类似这样的文件,不用动那么大的干戈,一个小小的动作...
    99+
    2023-06-02
    win7 修改hosts 权限 解决 文件 service hosts
  • Win8杀毒软件Defender阻止修改hosts文件的解决方法
      hosts文件是一种系统文件,它的作用是网址域名与对应IP建立关联的“数据库”。当我们修改hosts文件时,Win8系统内置的安全软件Windows Defender就会出来干涉...
    99+
    2022-06-04
    解决方法 杀毒软件 文件
  • php修改word的实例方法
    将word另存为网页。 修改为默认页面视图。 编写php代码。 通过fwrite等函数修改Word内容即可。 实例 ob_start();//开启缓存 print'';//输出头部 $content = file_get_conte...
    99+
    2016-02-25
    php 修改word
  • php修改80端口的方法
    这篇文章主要讲解了“php修改80端口的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php修改80端口的方法”吧!php修改80端口的方法:首先找到apache安装目录;然后打开htt...
    99+
    2023-06-20
  • Win8自带杀毒软件Defender阻止修改hosts文件的解决方法
      hosts文件是一种系统文件,它的作用是网址域名与对应IP建立关联的“数据库”。当我们修改hosts文件时,Win8系统内置的安全软件Windows Defender就会出来干涉...
    99+
    2022-06-04
    自带 解决方法 杀毒软件
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作