Blame | Letzte Änderung | Log anzeigen | RSS feed
<?php/** This file is part of SwiftMailer.* (c) 2004-2009 Chris Corbyn** For the full copyright and license information, please view the LICENSE* file that was distributed with this source code.*///@require 'Swift/Mime/ContentEncoder.php';//@require 'Swift/Encoder/Base64Encoder.php';//@require 'Swift/InputByteStream.php';//@require 'Swift/OutputByteStream.php';/*** Handles Base 64 Transfer Encoding in Swift Mailer.* @package Swift* @subpackage Mime* @author Chris Corbyn*/class Swift_Mime_ContentEncoder_Base64ContentEncoderextends Swift_Encoder_Base64Encoderimplements Swift_Mime_ContentEncoder{/*** Encode stream $in to stream $out.* @param Swift_OutputByteStream $in* @param Swift_InputByteStream $out* @param int $firstLineOffset* @param int $maxLineLength, optional, 0 indicates the default of 76 bytes*/public function encodeByteStream(Swift_OutputByteStream $os, Swift_InputByteStream $is, $firstLineOffset = 0,$maxLineLength = 0){if (0 >= $maxLineLength || 76 < $maxLineLength){$maxLineLength = 76;}$remainder = 0;while (false !== $bytes = $os->read(8190)){$encoded = base64_encode($bytes);$encodedTransformed = '';$thisMaxLineLength = $maxLineLength - $remainder - $firstLineOffset;while ($thisMaxLineLength < strlen($encoded)){$encodedTransformed .= substr($encoded, 0, $thisMaxLineLength) . "\r\n";$firstLineOffset = 0;$encoded = substr($encoded, $thisMaxLineLength);$thisMaxLineLength = $maxLineLength;$remainder = 0;}if (0 < $remainingLength = strlen($encoded)){$remainder += $remainingLength;$encodedTransformed .= $encoded;$encoded = null;}$is->write($encodedTransformed);}}/*** Get the name of this encoding scheme.* Returns the string 'base64'.* @return string*/public function getName(){return 'base64';}}