public function PHPMailer::addStringAttachment
Search API
| 5.x PHPMailer.php | public PHPMailer::addStringAttachment(
$string, 
$filename, 
$encoding = self::ENCODING_BASE64, 
$type = '', 
$disposition = 'attachment'
) | 
        
Add a string or binary attachment (non-filesystem). This method can be used to attach ascii or binary data, such as a BLOB record from a database.
Parameters
string $string String attachment data:
string $filename Name of the attachment:
string $encoding File encoding (see $Encoding):
string $type File extension (MIME) type:
string $disposition Disposition to use:
Return value
bool True on successfully adding an attachment
Throws
File
- inc/
PHPMailer/ src/ PHPMailer.php, line 3336  
Class
- PHPMailer
 - PHPMailer - PHP email creation and transport class.
 
Namespace
PHPMailer\PHPMailerCode
public function addStringAttachment(
$string, 
$filename, 
$encoding = self::ENCODING_BASE64, 
$type = '', 
$disposition = 'attachment'
) {
  try {
    // If a MIME type is not specified, try to work it out from the file name
    if ('' == $type) {
      $type = static::filenameToType($filename);
    }
    if (!$this->validateEncoding($encoding)) {
      throw new Exception($this->lang('encoding') . $encoding);
    }
    // Append to $attachment array
    $this->attachment [] = [
      0 => $string,
      1 => $filename,
      2 => static::mb_pathinfo($filename, PATHINFO_BASENAME),
      3 => $encoding,
      4 => $type,
      5 => true, // isStringAttachment
      6 => $disposition,
      7 => 0,
    ];
  }
  catch (Exception $exc) {
    $this->setError($exc->getMessage());
    $this->edebug($exc->getMessage());
    if ($this->exceptions) {
      throw $exc;
    }
    return false;
  }
  return true;
}
  