⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 php++-

📁 php使用的技巧,对于用PHP开发程序很有帮助
💻
📖 第 1 页 / 共 4 页
字号:
            <BR>&nbsp; <BR>&nbsp; --$boundary <BR>&nbsp; Content-type: 
            $mimeType; name=$fileName <BR>&nbsp; Content-disposition: 
            attachment; filename=$fileName <BR>&nbsp; Content-transfer-encoding: 
            base64 <BR>&nbsp; <BR>&nbsp; $read <BR>&nbsp; <BR>&nbsp; 
            --$boundary--"; <BR>&nbsp; <BR>&nbsp; mail($to, $subject, $body, 
            $headers); <BR>&nbsp; } <BR>&nbsp; ?&gt; <BR>&nbsp; <BR>&nbsp; 
            <BR>&nbsp;</FONT></FONT></TD></TR><INPUT type=hidden value=9 
        name=whichpage9> 
        <TR>
          <TD vAlign=top align=left width="8%"><FONT size=2>0279.</FONT></TD>
          <TD width="92%"><FONT color=#ffff00 size=2><A name=0279>PHP 里 OR 
            的用法举例 </A></FONT></TD></TR>
        <TR>
          <TD width="8%"><FONT size=2></FONT></TD>
          <TD width="92%"><FONT size=2><FONT color=#008000>解释: 
            </FONT><BR>&nbsp; <FONT color=#00ffff>也许你根本就没注意到OR的存在,那么先看个例子: 
            <BR>&nbsp; <BR>&nbsp; $choice1 = "ctohome.com"; <BR>&nbsp; $choice2 
            = ""; <BR>&nbsp; $default = "php.net"; <BR>&nbsp; <BR>&nbsp; $val_1 
            = $choice1 || $choice2 || $default; <BR>&nbsp; $val_2 = $choice1 or 
            $choice2 or $default; <BR>&nbsp; $val_3 = ($choice1 or $choice2 or 
            $default); <BR>&nbsp; <BR>&nbsp; echo "val_1=$val_1 val_2=$val_2 
            val_3=$val_3 "; <BR>&nbsp; <BR>&nbsp; $x_1 = foo() or bar(); 
            <BR>&nbsp; $x_2 = $x_1 or bar(); <BR>&nbsp; $x_3 = ($x_1 or bar()); 
            <BR>&nbsp; <BR>&nbsp; echo "x_1=$x_1 x_2=$x_2 x_3=$x_3"; <BR>&nbsp; 
            <BR>&nbsp; function foo() { <BR>&nbsp; return 0; <BR>&nbsp; } 
            <BR>&nbsp; <BR>&nbsp; function bar() { <BR>&nbsp; return 1; 
            <BR>&nbsp; } <BR>&nbsp; <BR>&nbsp; 运行结果是: <BR>&nbsp; <BR>&nbsp; 
            $val_1=1 $val_2=ctohome.com $val_3=1 <BR>&nbsp; x_1=0 x_2=0 x_3=1 
            <BR>&nbsp; <BR>&nbsp; 你做对了吗? <BR>&nbsp; <BR>&nbsp; <BR>&nbsp; 另外 OR 
            在某种程度上还相当与 IF ,如: <BR>&nbsp; <BR>&nbsp; is_array ($variable) OR 
            notAnArray(); <BR>&nbsp; <BR>&nbsp; function notAnArray() { 
            <BR>&nbsp; echo "This is not an array"; <BR>&nbsp; } <BR>&nbsp; 
            <BR>&nbsp;</FONT></FONT></TD></TR><INPUT type=hidden value=9 
        name=whichpage10> 
        <TR>
          <TD vAlign=top align=left width="8%"><FONT size=2>0280.</FONT></TD>
          <TD width="92%"><FONT color=#ffff00 size=2><A 
            name=0280>用PHP实现POP3邮件的收取(一) </A></FONT></TD></TR>
        <TR>
          <TD width="8%"><FONT size=2></FONT></TD>
          <TD width="92%"><FONT size=2><FONT color=#008000>解释: 
            </FONT><BR>&nbsp; <FONT 
            color=#00ffff>本文简要说明了通过POP3协议收取邮件、MIME邮件的解码的原理;针对收取和MIME解码,提供了两个实用的PHP类,并提供了使用的样例。分为邮件收取、MIME解码两个部分。这里我们先向您介绍邮件的收取,解码部分会在以后的文章中为各位详细的介绍,敬请关注。 
            <BR>&nbsp; <BR>&nbsp;    <BR>&nbsp; <BR>&nbsp; 
              现在Internet上最大的应用应该是非Email莫属了,我们每天都习惯于每天通过Email进行交流,各大网站也几乎都推出了自己的基于WEB的免费邮件系统。在本文里,笔者将介绍一些Email实现的一些原理。同时我们假设你对于PHP的编程有一定的基础,对于TCP/IP协议也有一定的了解。 
            <BR>&nbsp; <BR>&nbsp; POP 协议简介 <BR>&nbsp;   POP的全称是 Post Office 
            Protoco ,即邮局协议,用于电子邮件的接收,现在常 用的是第三版 ,简称为 
            POP3。通过POP协议,客户机登录到服务器上后,可以对自己的邮件进行删除,或是下载到本地,下载后,电子邮件客户软件就可以在本地对邮件进行修改、删除等。另外一种用于接收信件的邮件是 
            IMAP 协议,现在发展很快,在本文中,我们暂不讨论。 <BR>&nbsp; <BR>&nbsp; 
              POP服务器一般使用的是TCP的110号端口,如果你用的是Foxmail的话,在其收邮件的时候,你可以看到其信息提示窗口有这么一些命令: 
            <BR>&nbsp; <BR>&nbsp;   “正在连接到 62.123.23.123:110"; <BR>&nbsp; 
            <BR>&nbsp;   "USER BOSS_CH"; <BR>&nbsp; <BR>&nbsp; 
              "PASS.............."; <BR>&nbsp; <BR>&nbsp;   下面让我们来看一段 与 POP3 
            服务器对话的实录: <BR>&nbsp; <BR>&nbsp;   telenet pop.china.com 110 
            <BR>&nbsp; <BR>&nbsp;   +OK AIMC POP service (mail2.china.com) is 
            ready. <BR>&nbsp; <BR>&nbsp;   USER boss_ch <BR>&nbsp; <BR>&nbsp; 
              +OK Please enter password for user &lt;boss_ch&gt;. <BR>&nbsp; 
            <BR>&nbsp;   PASS ****** <BR>&nbsp; <BR>&nbsp;   +OK boss_ch has 1 
            messages (750 octets) <BR>&nbsp; <BR>&nbsp;   STAT <BR>&nbsp; 
            <BR>&nbsp;   +OK 1 750 <BR>&nbsp; <BR>&nbsp;   LIST <BR>&nbsp; 
            <BR>&nbsp;   +OK 1 messages (750 octets) <BR>&nbsp; <BR>&nbsp;   1 
            750 <BR>&nbsp; <BR>&nbsp;   RETR 1 <BR>&nbsp; <BR>&nbsp;   +OK 750 
            octets <BR>&nbsp; <BR>&nbsp;   Received: from 
            smtp2.ptt.js.cn([202.102.24.37]) by china.com(JetMail 2.5.3.0) 
            <BR>&nbsp; <BR>&nbsp;   with SMTP id jm4839cc4227; Sat, 23 Sep 2000 
            05:31:21 -0000 <BR>&nbsp; <BR>&nbsp;   Received: from chenjunqing 
            ([61.155.120.6]) by smtp2.ptt.js.cn <BR>&nbsp; <BR>&nbsp; 
              (Netscape Messaging Server 4.15) with SMTP id G1BRHJ03.V07 for 
            <BR>&nbsp; <BR>&nbsp;   &lt;boss_ch@china.com&gt;; Sat, 23 Sep 2000 
            13:34:31 +0800 <BR>&nbsp; <BR>&nbsp;   Date: Sat, 23 Sep 2000 
            13:34:18 +0800 <BR>&nbsp; <BR>&nbsp;   From: 
            =?ISO-8859-1?Q?=B3=C2=BF=A1=C7=E5?= &lt;Boss_ch@netease.com&gt; 
            <BR>&nbsp; <BR>&nbsp;   To: boss_ch@china.com 
            &lt;boss_ch@china.com&gt; <BR>&nbsp; <BR>&nbsp;   Subject: 
            =?ISO-8859-1?Q?=D3=CA=BC=FE=CA=BE=C0=FD?= <BR>&nbsp; <BR>&nbsp; 
              X-mailer: FoxMail 3.1 [cn] <BR>&nbsp; <BR>&nbsp;   Mime-Version: 
            1.0 <BR>&nbsp; <BR>&nbsp;   Content-Type: text/plain; 
            charset="GB2312" <BR>&nbsp; <BR>&nbsp;   Content-Transfer-Encoding: 
            8bit <BR>&nbsp; <BR>&nbsp;   Message-ID: 
            &lt;G1BRHJ03.V07@smtp2.ptt.js.cn&gt; <BR>&nbsp; <BR>&nbsp;   您好! 
            <BR>&nbsp; <BR>&nbsp;     这是一个邮件的小示例 <BR>&nbsp; <BR>&nbsp;   QUIT 
            <BR>&nbsp; <BR>&nbsp;   +OK Pop server at &lt;mail2.china.com&gt; 
            signing off. <BR>&nbsp; <BR>&nbsp;   以下对几个常用的POP3命令作一个简单的介绍 : 
            <BR>&nbsp; <BR>&nbsp;   命令    参数    状态    描述 <BR>&nbsp; <BR>&nbsp; 
              ------------------------------------------ <BR>&nbsp; <BR>&nbsp; 
              USER    username  认可    此命令与下面的pass命令若成功,将导致状态转换 <BR>&nbsp; 
            <BR>&nbsp;   PASS    password  认可 <BR>&nbsp; <BR>&nbsp;   APOP 
               Name,Digest 认可    Digest是MD5消息摘要 <BR>&nbsp; <BR>&nbsp; 
              ------------------------------------------ <BR>&nbsp; <BR>&nbsp; 
              STAT    None    处理    请求服务器发回关于邮箱的统计资料,如邮件总数和总字节数 <BR>&nbsp; 
            <BR>&nbsp;   UIDL    [Msg <BR>&nbsp;   LIST    [Msg <BR>&nbsp; 
              RETR    [Msg <BR>&nbsp;   DELE    [Msg <BR>&nbsp;   RSET    
            None    处理    服务器将重置所有标记为删除的邮件,用于撤消DELE命令 <BR>&nbsp; <BR>&nbsp; 
              TOP    [Msg <BR>&nbsp;   NOOP    None    处理 
               服务器返回一个肯定的响应,不做任何操作。 <BR>&nbsp; <BR>&nbsp; 
              ------------------------------------------ <BR>&nbsp; <BR>&nbsp; 
              QUIT    None    更新 退出 <BR>&nbsp; 
        <BR>&nbsp;</FONT></FONT></TD></TR><INPUT type=hidden value=9 
        name=whichpage11> 
        <TR>
          <TD vAlign=top align=left width="8%"><FONT size=2>0281.</FONT></TD>
          <TD width="92%"><FONT color=#ffff00 size=2><A 
            name=0281>用PHP实现POP3邮件的收取(二) </A></FONT></TD></TR>
        <TR>
          <TD width="8%"><FONT size=2></FONT></TD>
          <TD width="92%"><FONT size=2><FONT color=#008000>解释: 
            </FONT><BR>&nbsp; <FONT 
            color=#00ffff>现在让我们来用PHP实现一个通过POP3协议收取信件的类吧,这个类中所用到的一些sock操作的函数,不另做特殊说明,请参考php的有关资料。通过这个实例,相信你也会和我一样,感觉到PHP中对于sock操作的灵活、方便和功能的强大。 
            <BR>&nbsp; <BR>&nbsp; 
              首先,我们来说明一下这个类中需要用到的一些内部成员变量:(这些变量应该都是对外封闭的,可是由于php对类的成员变量没有private与publice之类的分别,只好就这么直接定义了。这是PHP的一个令人遗憾的地方。) 
            <BR>&nbsp; <BR>&nbsp;    <BR>&nbsp; <BR>&nbsp;   1.成员变量说明 <BR>&nbsp; 
            <BR>&nbsp;   class pop3 <BR>&nbsp; <BR>&nbsp;   { <BR>&nbsp; 
            <BR>&nbsp;       var $hostname=""; // POP主机名 <BR>&nbsp; <BR>&nbsp; 
                  var $port=110; // 主机的POP3端口,一般是110号端口 <BR>&nbsp; <BR>&nbsp;    
            var $timeout=5;  // 连接主机的最大超时时间  <BR>&nbsp; <BR>&nbsp;       var 
            $connection=0; // 保存与主机的连接 <BR>&nbsp; <BR>&nbsp;       var 
            $state="DISCONNECTED"; // 保存当前的状态  <BR>&nbsp; <BR>&nbsp;       var 
            $debug=0;  // 做为标识,是否在调试状态,是的话,输出调试信息 <BR>&nbsp; <BR>&nbsp;    var 
            $err_str='';  // 如果出错,这里保存错误信息 <BR>&nbsp; <BR>&nbsp;    var 
            $err_no;   //如果出错,这里保存错误号码 <BR>&nbsp; <BR>&nbsp;    var $resp; // 
            临时保存服务器的响应信息 <BR>&nbsp; <BR>&nbsp;    var $apop; // 
            指示需要使用加密方式进行密码验证,一般服务器不需要 <BR>&nbsp; <BR>&nbsp;    var $messages; 
            // 邮件数 <BR>&nbsp; <BR>&nbsp;    var $size; //各邮件的总大小 <BR>&nbsp; 
            <BR>&nbsp;    var $mail_list; // 一个数组,保存各个邮件的大小及其在邮件服务器上序号 
            <BR>&nbsp; <BR>&nbsp;    <BR>&nbsp; <BR>&nbsp;    var $head=array(); 
            // 邮件头的内容,数组 <BR>&nbsp; <BR>&nbsp;    var $body=array(); // 
            邮件体的内容,数组; <BR>&nbsp; <BR>&nbsp;    <BR>&nbsp; <BR>&nbsp; 
              2.当然,这其中的有些变量,仅通过这样一个简单的说明并不能完全了解如何使用,下面我就逐个来说明这个类实现中的一些主要方法: 
            <BR>&nbsp; <BR>&nbsp;   Function 
            pop3($server="192.100.100.1",$port=110,$time_out=5) <BR>&nbsp; 
            <BR>&nbsp;   {$this-&gt;hostname=$server; <BR>&nbsp; <BR>&nbsp;    
            $this-&gt;port=$port; <BR>&nbsp; <BR>&nbsp;    
            $this-&gt;timeout=$time_out; <BR>&nbsp; <BR>&nbsp;    return true; 
            <BR>&nbsp; <BR>&nbsp;   } <BR>&nbsp; <BR>&nbsp; 
              熟悉面向对象编程的朋友一看就会知道,这是这个类的构造函数,在初始化这个类时,可以给出这几个最基本的参数:pop3服务器的地址,端口号,及连接服务器时的最大超时时间。一般来说,只需要给出POP3服务器的地址就行了。 
            <BR>&nbsp; <BR>&nbsp;   Function open() <BR>&nbsp; <BR>&nbsp;   { 
            <BR>&nbsp; <BR>&nbsp;   if($this-&gt;hostname=="") <BR>&nbsp; 
            <BR>&nbsp;     {$this-&gt;err_str="无效的主机名!!"; <BR>&nbsp; <BR>&nbsp; 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -