<?php //Turn error reporting on for development error_reporting( E_ERROR || E_WARNING || E_PARSE || E_NOTICE ); //Extend amount of time it takes for a script to time out set_time_limit( 500000 ); //Shorthand reference for current working directory $DOCUMENT_ROOT = $_SERVER[ 'DOCUMENT_ROOT' ]; //Create an array of top level domains $tld = file( "$DOCUMENT_ROOT/tld.txt" ); //Use file to create array of strings to search for //$needles = file( "$DOCUMENT_ROOT/spider/needles.txt" ); $needles[] = 'db.inc'; //Initiate a counter $counter = 0; //Process every domain while( list( $key, $domain ) = each( $tld ) ) { //Inform user of current domain being processed echo 'Checking <b>' . $domain . '</b>...<br/>'; //Remove excess whitespace $domain = trim( $domain ); while( list( $n, $needle ) = each( $needles ) ) { //Query $url = 'http://www.google.com/search?hl=en&q=site%3A' . $domain . '%2F' . $needle . '&btnG=Google+Search'; //Web page returned as string $data = file_get_contents( $url ); //Distinguish if there was or wasn't any results if( strpos( $data, 'did not match any' ) > 1 ) { //No results found in search $display = 0; } else { //Results found $display = 1; } if( $display > 0 ) { //Display results to user echo $data; } else { //Inform user that there was no data for the domain echo ' Nothing for <b>' . $domain . ' ' . $needle . '</b><br/><br/>'; } //Remove variable from memory for next iteration unset( $display ); //Delay each query if needed //sleep( 1 ); } //Delay each query if needed sleep( 15 ); //Move pointer back to start of array reset( $needles ); //Increase counter $counter++; }?>