1024programmer Java PHP implements grabbing Google IP and automatically modifying the hosts file, _PHP tutorial

PHP implements grabbing Google IP and automatically modifying the hosts file, _PHP tutorial

PHP implements grabbing Google IP and automatically modifying the hosts file,


Out of boredom, I actually found a PHP version to grab the google hosts file. I tried it and it still works. I pinged the IP and the delay was not very high. When I opened the web page and tested it, it was also very fast. Everyone is interested. If so, you can try it.

Automatically updates the hosts file without overwriting existing records. It is convenient to use and does not require copying -> opening the hosts file -> pasting every time.

php file:

 <?php
 /**
  * No need to go through Google on the wall
  * @author Enjoy yourself and enjoy yourself 
  * Date: 2015/2/6
  * Time: 11:42
 */

 define('START_TAG','#google-hosts-2015');
 define('END_TAG','#google-hosts-2015-end');
 if(!empty($argv[1])){
  $params = array();
  parse_str($argv[1], $params);
 if(isset($params['url'])){
  define('GOOGLE_HOST_URL', $params['url']);
 }
 if(isset($params['del'])){
 define('DELETE_GOOGLE_HOST',true);
 }
 }
 defined('GOOGLE_HOST_URL') || define('GOOGLE_HOST_URL', 'http://www.360kb.com/kb/2_150.html');

 if(PHP_OS == 'WINNT'){
  define('HOSTS_FILE_PATH', 'C:WindowsSystem32driversetchosts');
 }else if(in_array(PHP_OS, array('Linux','Darwin','FreeBSD','OpenBSD','WIN32','Windows','Unix'))){
  define('HOSTS_FILE_PATH', '/etc/hosts');
 }else{
  die('Unsupported system!'.PHP_EOL);
 }

 if(!is_writable(HOSTS_FILE_PATH)){
  die('Without permission, please use the root user to perform!'.PHP_EOL);
 }

 $hosts = file_get_contents(HOSTS_FILE_PATH);

 $startPos = strpos($hosts, START_TAG);
 if(!defined('DELETE_GOOGLE_HOST')){
  $gs = get_google_hosts();
  echo GOOGLE_HOST_URL.PHP_EOL;
  echo $gs.PHP_EOL;
 }else{
  $gs = '';
  echo 'reset hosts'.PHP_EOL;
 }

 if($startPos){
  $_tmp = substr($hosts, $startPos, strpos($hosts, END_TAG) - $startPos + strlen(END_TAG));
  $hosts = str_replace($_tmp,$gs,$hosts);
 }else{
  $hosts.= PHP_EOL.$gs;
 }

 $old_file_size = filesize(HOSTS_FILE_PATH);

 if(file_put_contents(HOSTS_FILE_PATH, $hosts)){
  die('success. '.PHP_EOL);
 }else{
 die('fail'.PHP_EOL);
 }

 function get_google_hosts(){
  $html = file_get_contents(GOOGLE_HOST_URL);
  $html = strip_tags($html);
  $startPos = strpos($html, START_TAG);
  $html = substr($html, $startPos, strpos($html,END_TAG) - $startPos);
  $html = str_replace(' ',' ',$html);
  return $html.PHP_EOL.END_TAG;
 }
 

http://www.bkjia.com/PHPjc/957131.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/957131.htmlTechArticlePHP can capture Google IP and automatically modify the hosts file. I was bored and found a PHP version to capture the Google hosts file. I tried it and it still works. After pinging the IP, the delay is not very high. Web page…

This article is from the internet and does not represent1024programmerPosition, please indicate the source when reprinting:https://www.1024programmer.com/php-implements-grabbing-google-ip-and-automatically-modifying-the-hosts-file-_php-tutorial-2/

author: admin

Previous article
Next article

Leave a Reply

Your email address will not be published. Required fields are marked *

Contact Us

Contact us

181-3619-1160

Online consultation: QQ交谈

E-mail: [email protected]

Working hours: Monday to Friday, 9:00-17:30, holidays off

Follow wechat
Scan wechat and follow us

Scan wechat and follow us

Follow Weibo
Back to top
首页
微信
电话
搜索