-
PHP Web 2.0 Mashup Projects.pdf下载
资源介绍
A mashup is a web page or application that combines data from two or more
external online sources into an integrated experience. This book is your entryway to
the world of mashups and Web 2.0. You will create PHP projects that grab data from
one place on the Web, mix it up with relevant information from another place on the
Web and present it in a single application. All the mashup applications used in the
book are built upon free tools and are thoroughly explained. You will find all the
source code used to build the mashups in the code download section on our website.
This book is a practical tutorial with five detailed and carefully explained case
studies to build new and effective mashup applications.
What This Book Covers
You will learn how to write PHP code to remotely consume services like Google
Maps, Flickr, Amazon, YouTube, MSN Search, Yahoo!, Last.fm, and the Internet UPC
Database, not to mention the California Highway Patrol Traffic data! You will also
learn about the technologies, data formats, and protocols needed to use these web
services and APIs, and some of the freely-available PHP tools for working with them.
You will understand how these technologies work with each other and see how
to use this information, in combination with your imagination, to build your own
cutting-edge websites.
Chapter 1 provides an overview of mashups: what a mashup is, and why you would
want one.
In Chapter 2 we create a basic mashup, and go shopping. We will simply look up
products on Amazon.com based on the Universal Product Code (UPC). To do this,
we cover two basic web services to get our feet wet — XML-RPC and REST. The
Internet UPC database is an XML-RPC-based service, while Amazon uses REST.
Preface
[ 2 ]
We will create code to call XML-RPC and REST services. Using PHP's SAX function,
we create an extensible object-oriented parser for XML. The mashup covered in this
chapter integrates information taken from Amazon's E-commerce Service (ECS) with
the Internet UPC database.
In Chapter 3, we create a custom search engine using the technology of MSN, and
Yahoo! The chapter starts with an introduction to SOAP, the most complex of the
web service protocols. SOAP relies heavily on other standards like WSDL and XSD,
which are also covered in readable detail. We take a look at a WSDL document and
learn how to figure out what web services are available from it, and what types of
data are passed. Using PHP 5's SoapClient extension, we then interact with SOAP
servers to grab data. We then finally create our mashup, which gathers web search
results sourced from Microsoft Live and Yahoo!
For the mashup in Chapter 4, we use the API from the video repository site YouTube,
and the XML feeds from social music site Last.fm. We will take a look at three
different XML-based file formats from those two sites: XSPF for song playlists, RSS
for publishing frequently updated information, and YouTube's custom XML format.
We will create a mashup that takes the songs in two Last.fm RSS feeds and
queries YouTube to retrieve videos for those songs. Rather than creating our own
XML-based parsers to parse the three formats, we have used parsers from PEAR,
one for each of the three formats. Using these PEAR packages, we create an
object-oriented abstraction of these formats, which can be consumed by our
mashup application.
In Chapter 5, we screen-scrape from the California Highway Patrol website. The
CHP maintains a website of traffic incidents. This site auto-refreshes every minute,
ensuring the user gets live data about accidents throughout the state of California.
This is very valuable if you are in front of a computer. If you are out and about
running errands, it would be fairly useless. However, our mashup will use the web
service from 411Sync.com to accept SMS messages from mobile users to deliver these
traffic incidents to users.
We've thrown almost everything into Chapter 6! In this chapter, we use RDF
documents, SPARQL, RAP, Google Maps, Flickr, AJAX, and JSON. We create a
geographically-centric way to present pictures from Flickr on Google Maps. We see
how to read RDF documents and how to extract data from them using SPARQL and
RAP for RDF. This gets us the latitude and longitude of London tube stations. We
display them on a Google Map, and retrieve pictures of a selected station from Flickr.
Our application needs to communicate with the API servers for which we use
AJAX and JSON, which is emerging as a major data format. The biggest pitfall in
this AJAX application is race conditions, and we will learn various techniques to
overcome these.