在PHP中使用COM类-olMailItem附加文件

在PHP中使用COM类-olMailItem附加文件,php,outlook,sendmail,email-attachments,Php,Outlook,Sendmail,Email Attachments,我想用PHP中的COM类发送电子邮件。 在我尝试添加附件之前,它工作得很好,whitch是我需要做的最重要的部分 谢谢你的帮助 这是我做的代码。 没有$oMsg->attachments->Addfile路径、文件名;它工作得很好 <?php $standard_email = "myemail@..."; $UPLOAD_PATH = "uploads/"; // $UPLOAD_FILE = $UPLOAD_PATH.$_FILES['arquivo

我想用PHP中的COM类发送电子邮件。 在我尝试添加附件之前,它工作得很好,whitch是我需要做的最重要的部分

谢谢你的帮助

这是我做的代码。 没有$oMsg->attachments->Addfile路径、文件名;它工作得很好

<?php
    $standard_email = "myemail@...";
    $UPLOAD_PATH = "uploads/";

    //

    $UPLOAD_FILE = $UPLOAD_PATH.$_FILES['arquivo']['name'];
    move_uploaded_file($_FILES['arquivo']['tmp_name'], $UPLOAD_FILE);
    echo $UPLOAD_FILE;


    if (!defined("olMailItem")) {
        define("olMailItem",0);
    }
    $oApp  = new COM("Outlook.Application") or die('error');
    $oMsg = $oApp->CreateItem(olMailItem);
    $oMsg->Recipients->Add($standard_email);
    $oMsg->Subject="Testing";
    $oMsg->Body="Test";

    //Add attachement - here I get an error
    $oMsg->attachments->Add("file path", "file name");


    $oMsg->Save();
    $oMsg->Send();

?>
这些论点是错误的。附件.Add需要4个参数,其中1个是必需的,另外3个是可选的:

在您的情况下,您只需要第一个参数,即完全限定的文件名路径加上文件名。

只需使用:

$oMsg->attachments->Add("file path");