Risolto con questo script:

Codice PHP:
<?
define
('FPDF_FONTPATH','../../utils/fpdf/font/');
require(
'../../utils/fpdf/fpdf.php');

$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont("Arial","B",14);
$pdf->Cell(40,10"this is a pdf example");

$from "ciupa@myown.com"
$subject "send email with pdf attachment"
$message "Please see the attachment.";

$separator md5(time());
$eol PHP_EOL;
$filename "example.pdf";
$pdfdoc $pdf->Output("example.pdf""F");

$to "me@myown.com"
$subject 'Test email with attachment';
$random_hash md5(date('r'time()));
$headers "From: [email]webmaster@example.com[/email]\r\nReply-To: $to";
$headers .= "\r\nContent-Type: multipart/mixed; boundary=\"PHP-mixed-".$random_hash."\"";
$attachment chunk_split(base64_encode(file_get_contents('example.pdf')));

ob_start(); 
?>
--PHP-mixed-<?php echo $random_hash?> 
Content-Type: multipart/alternative; boundary="PHP-alt-<?php echo $random_hash?>"

--PHP-alt-<?php echo $random_hash?> 
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

Hello World!!!
This is simple text email message.

--PHP-alt-<?php echo $random_hash?> 
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

<h2>Hello World!</h2>


This is something with [b]HTML[/b] formatting.</p>

--PHP-alt-<?php echo $random_hash?>--

--PHP-mixed-<?php echo $random_hash?> 
Content-Type: application/pdf; name="example.pdf" 
Content-Transfer-Encoding: base64 
Content-Disposition: attachment 

<?php echo $attachment?>
--PHP-mixed-<?php echo $random_hash?>--

<?php
$message 
ob_get_clean();
$mail_sent = @mail$to$subject$message$headers );
echo 
$mail_sent "Mail sent" "Mail failed";
?>
Tutti gli altri tipi di codice creano allegati corrotti...