source: branches/version-2_11-dev/data/module/SOAP/example/email_pop_gateway.php @ 21299

Revision 21299, 2.1 KB checked in by Seasoft, 13 years ago (diff)

#1521 (PEAR::SOAP 配布と異なる部分がある)

  • 新しいバージョンの配布ファイルを上書きすることで解決

#1522 (PEAR::SOAP をバージョンアップ)

  • 0.11.0 -> 0.12.0
  • Property svn:eol-style set to LF
  • Property svn:mime-type set to text/x-httpd-php; charset=UTF-8
Line 
1<?php
2/**
3 * POP3 gateway.
4 *
5 * PHP versions 4 and 5
6 *
7 * license: This source file is subject to version 2.02 of the PHP license,
8 * that is bundled with this package in the file LICENSE, and is available at
9 * through the world-wide-web at http://www.php.net/license/2_02.txt.  If you
10 * did not receive a copy of the PHP license and are unable to obtain it
11 * through the world-wide-web, please send a note to license@php.net so we can
12 * mail you a copy immediately.
13 *
14 * @category   Web Services
15 * @package    SOAP
16 * @author     Shane Caraveo <Shane@Caraveo.com>   Port to PEAR and more
17 * @author     Jan Schneider <jan@horde.org>       Maintenance
18 * @copyright  2003-2007 The PHP Group
19 * @license    http://www.php.net/license/2_02.txt  PHP License 2.02
20 * @link       http://pear.php.net/package/SOAP
21 */
22
23/* SOAP_Server_Email_Gateway */
24require_once 'SOAP/Server/Email_Gateway.php';
25
26/* Include a class to access POP3. */
27require_once 'Net/POP3.php';
28
29/* Create the SOAP Server object. */
30$server = new SOAP_Server_Email_Gateway('http://localhost/soap_interop/server_round2.php');
31
32/* Tell the server to translate to classes we provide if possible. */
33$server->_auto_translation = true;
34
35require_once './example_server.php';
36$soapclass = new SOAP_Example_Server();
37$server->addObjectMap($soapclass,'urn:SOAP_Example_Server');
38
39/* Connect to a POP3 server and read the messages. */
40$pop3 = new Net_POP3();
41if ($pop3->connect('localhost', 110)) {
42    if ($pop3->login('username', 'password')) {
43        $listing = $pop3->getListing();
44
45        /* Now loop through each message, and call the SOAP server with that
46         * message. */
47        foreach ($listing as $msg) {
48            $email = $pop3->getMsg($msg['msg_id']);
49
50            /* This is where we actually handle the SOAP response.  The
51             * SOAP::Server::Email class we are using will send the SOAP
52             * response to the sender via email. */
53            if ($email) {
54                $server->service($email);
55            }
56
57            // $pop3->deleteMsg($msg['msg_id']);
58        }
59    }
60    $pop3->disconnect();
61}
Note: See TracBrowser for help on using the repository browser.