php修改主机的方法

  介绍

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

php修改主机的方法:首先删除配置文件里域的主机,将域配置为指定ip,然后添加一条主机记录;最后写入主机文件,代码为【公共函数写()】。

<强> php修改主机的方法:

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

& lt; php ?   定义(& # 39;HOST_FILE& # 39;,, & # 39; C: \ Windows \ System32系统\ \等司机\主机# 39;);   $ hm =, new  HostManage (HOST_FILE);   时间=美元env  $ argv [1];   if (空(env美元)),{   ,,,嗯→美元delAllGroup ();   },{else    ,,,嗯→美元addGroup ($ env);   }   class  HostManage  {   ,,,//,hosts 文件路径   ,,,protected  $文件;   ,,,//,hosts 记录数组   ,,,protected  hosts 美元;=,数组();   ,,,//,配置文件路径,默认为,__FILE__ 只& # 39;. ini # 39;;   ,,,protected  configFile美元;   ,,,//,从,ini 配置文件读取出来的配置数组   ,,,protected  config 美元;=,数组();   ,,,//,配置文件里面需要配置的域名   ,,,protected  domain 美元;=,数组();   ,,,//,配置文件获取的,ip 数据   ,,,protected  ip 美元;=,数组();   ,,,public  function  __construct(文件,美元,美元config_file =, null), {   ,,,,,,,这个→美元file =, $文件;   ,,,,,,,if  (config_file美元),{   ,,,,,,,,,这个→美元configFile =, config_file美元;   ,,,,,,,},{else    ,,,,,,,,,这个→美元configFile =, __FILE__ 只& # 39;. ini # 39;;   ,,,,,,,}   ,,,,,,,这个→美元initHosts ()   ,,,,,,,,,,,→initCfg ();   ,,,}   ,,,public  function  __destruct (), {   ,,,,,,,这个美元→写();   ,,,}   ,,,public  function  initHosts (), {   ,,,,,,,lines 美元;=,文件($ this→文件);   ,,,,,,,foreach  (lines 美元;as  $线),{   ,,,,,,,,,,,line 美元;=,修剪(线);   ,,,,,,,,,,,if (空(线)美元,| |,美元行[0],==,& # 39;# & # 39;),{   ,,,,,,,,,,,,,,,继续;   ,,,,,,,,,,,}   ,,,,,,,,,,,item 美元;=,preg_split (& # 39;/\ s +/& # 39;,,美元线);   ,,,,,,,,,,,这个美元→主机($ item [1]],=, $ item [0];   ,,,,,,,}   ,,,,,,,return 美元;   ,,,}   ,,,public  function  initCfg (), {   ,,,,,,,if  (!, file_exists ($ this→configFile)), {   ,,,,,,,,,,,这个→美元config =,数组();   ,,,,,,,},{else    ,,,,,,,,,,,这个→美元config =, (parse_ini_file ($ this→configFile,,真的));   ,,,,,,,}   ,,,,,,,这个→美元domain =,中的($ this→配置[& # 39;域# 39;]);   ,,,,,,,这个→美元ip =,这→美元配置(& # 39;ip # 39;);   ,,,,,,,return 美元;   ,,,}   ,,,/* *   ,,,,*,删除配置文件里域的,主机   ,,,*/,,,public  function  delAllGroup (), {   ,,,,,,,foreach  ($ this→domain  as 美元域),{   ,,,,,,,,,,,这个→美元delRecord($域);   ,,,,,,,}   ,,,}   ,,,/* *   ,,,,*,将域配置为指定,ip   ,,,,*,@param  type  env美元   ,,,,*,@return  \ HostManage   ,,,*/null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

php修改主机的方法