Programming the Google Web API with PHP

A simple example of programming the Google Web API with PHP and the NuSOAP module.

PHP (http://www.php.net/), a recursive acronym for “PHP Hypertext Processing,” has seen wide use as the HTML-embedded scripting language for web development. Add to that the NuSOAP PHP module for creating and consuming SOAP-based web services (http://dietrich.ganx4.com/nusoap) and you’ve a powerful combination.

This hack illustrates basic use of PHP and NuSOAP in concert to interact with the Google Web API.

The Code

<!--
# googly.php
# A typical Google Web API php script
# Usage: googly.php?query=<query>
-->
<html>
<head>
 <title>googly.php</title>
</head>
<body>
<?
# Use the NuSOAP php library
require_once('nusoap.php'),

# Set parameters
$parameters = array(
  'key'=>'insert key here',
  'q' => $HTTP_GET_VARS['query'],
  'start' => '0',
  'maxResults' => '10',
  'filter' => 'false',
  'restrict' => '',
  'safeSearch' => 'false',
  'lr' => '',
  'ie' => 'latin',
  'oe' => 'latin'
);

# Create a new SOAP client, feeding it GoogleSearch.wsdl on Google's site
$soapclient = new soapclient('http://api.google.com/GoogleSearch.wsdl', 'wsdl'),

# query Google
$results = $soapclient->call('doGoogleSearch',$parameters);

# Results?
if ( is_array($results['resultElements']) ) {
  print "<p>Your Google query for '" . $HTTP_GET_VARS['query'] . "' found " 
. $results['estimatedTotalResultsCount'] . " results, the top ten of which 
are:</p>";
  foreach ( $results['resultElements'] as $result ) {
    print 
      "<p><a href='" . $result['URL'] . "'>" . 
      ( $result['title'] ? $result['title'] : 'no title' ) .
      "</a><br />" . $result['URL'] . "<br />" .
      ( $result['snippet'] ? $result['snippet'] : 'no snippet' ) .
      "</p>";
  }
}

# No Results
else {
  print "Your Google query for '" . $HTTP_GET_VARS['query'] . "' returned no results";
}
?>
</body>
</html>

Running the Hack

Invoke this hack from your browser in the same manner you would a CGI script. It accepts one named argument, query with your preferred Google search:

http://localhost/googly.php?query=your google query

The Results

A search for php looks something like Figure 5-1.

PHP results page

Figure 5-1. PHP results page

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.143.4.181